数字の3桁位取りを自動化する

先日行ったWildLight中級セミナーで、受講していただいた方から以下のようなお題をいただきました。もちろん、セミナーではこれを題材にワイルドカードとWildLight特殊コマンドの実習を行いました。うまく解決できたお題ですので、当ブログでシェアいたします。

4桁以上の数字を自動的にカンマで位取りしたい

まず考えたいのは、対象となる数字の桁数です。4桁以上は確かですが、最大何桁までを対象と考えるかです。

X,XXX 〜 XXX,XXX,XXX,XXX

まぁ「兆」くらいをカバーしておけば実用的でしょうか?(笑) すると対応しなくてはならない組合せは以下の3通りということになります。

XXX,XXX
XXX,XXX,XXX
XXX,XXX,XXX,XXX

ワイルドカードで実現する上で、数字の桁数によって処理を変えるというのは、記述が難しそうですので、まずは、末尾三桁(下の例だと012)とそれ以前(123456789)を分けてヒットさせる方法を考えました。

123456789012

[0-9]@[0-9]{3}>

このワイルドカードの記述により、末尾三桁を[0-9]{3}> でヒットさせ、それ以前を [0-9]@ でヒットさせられます。それぞれを置換時に利用するために ( ) で括り、そして、それらの間に位取りのカンマ「,」を挿入するために、置換語に「¥1,¥2」と記述すれば良いことになります。WildLight辞書へは以下のように記述します。(※(TAB)は実際にタブキーを押して入力してください)

WILDCARD:ON
([0-9]@)([0-9]{3})>(TAB)¥1,¥2

この辞書を実行すると、4桁以上の数字は、以下のようになるはずです。

123,456
123456,789
123456789,012

さて、さらに上位の桁の位取りはどうしたらいいでしょう?
そうです。このワイルドカードを繰り返して実行すればいいのです。

ただし、ここで注意しなければならないのは、WildLightに以下の基本機能があることです。

  1. 検索した結果には、必ず蛍光ペンが付く。
  2. 蛍光ペンのない箇所が検索対象となる。

上記のワイルドカードを実行したことにより、数字にはすべて蛍光ペンがついている状態になっています。つまり、そのまま続けて実行したのでは、それらの数字は検索対象から除外されてしまい、位取りがされません。そこで利用するのが、検索時の蛍光ペンの有無を無視するコマンド「IgnoreH」です。

IgnoreH:ON で、検索時に蛍光ペンの有無を無視します(すべてを検索対象として検索する)。ちなみに IgnoreH:OFF でデフォルト値に戻り、基本機能通り、蛍光ペン箇所は検索対象から除外されます。では、これを使って辞書を記述してみると以下の通りになります。

WILDCARD:ON
([0-9]@)([0-9]{3})>(TAB)¥1,¥2
IgnoreH:ON
([0-9]@)([0-9]{3})>(TAB)¥1,¥2
([0-9]@)([0-9]{3})>(TAB)¥1,¥2

これで、兆までの数字に対して3桁位取りが自動で行われ、蛍光ペンがつきます。

この辞書は、ライブラリーに「WLDIC_変換_4桁以上の数値をカンマで自動的に位取り.txt」という名前で登録してありますので、ダウンロードしてご利用ください。

WildLightは、ワイルドカードの1文では表現しきれない処理も、辞書に記述を並べることで処理を可能にできるところが、大きな特長です。

中級セミナーをやります

今年最後の(笑)「WildLight中級セミナー」を東京ほんま会の主催で行います。

日時:8月21日(日) 13:00〜16:30
場所:株式会社翻訳センター会議室
受講料:3,500円

申込詳細は、以下URLの東京ほんま会ブログを参照してください。
https://tokyohomma.wordpress.com/

今回の中級セミナーは、最初にワイルドカードの使い方を学習し、それに続いて受講者からのアンケートに基づいて、ワイルドカードを使ったWildLight辞書の作成を学習します。
以下のような悩みや質問がある方は、是非参加を検討いただき、どんどんアンケートに「やりたいこと」を回答ください。セミナーの中で対応策を一緒に考えていきます。
(※WildLightの機能で実現できる範囲の対処策となりますので、予めご了承ください)

  • チェック辞書を作りたいけど、ワイルドカードでどう書けばいいの?
  • カタカナとカタカナの間にある半角は黄色、数字と単位の間にある半角は緑というような処理をしたいのだけど、どういう風に辞書に書けばいいの?
  • 文書スタイルを整えるための辞書は、どう書けばいいの?
  • 半角と全角の間にスペースが入っているのを検出するには、ワイルドカードでどう書けばいいの?

    などなど

実際にお仕事をしていて、困ったことを何とかできないか?という発想で、具体的な「困った例」をアンケートにお答えいただけると実のあるセミナーになるでしょう。

では、参加をお待ちしております。

 

 

 

WildLight中級セミナー 1/31

[Blog更新] WildLight中級セミナー(1月31日)

初の中級セミナー。ワイルドカードとWildLight特殊コマンドで、いろいろな翻訳周辺作業を簡素化しましょう。

この度、東京ほんま会主催による「WildLight中級セミナー」を、1月31日(日)に開催します。

今まで、初級セミナーは何度となく開催してきましたが、中級は初めてとなります。さて、一体、何が「中級」なのか?(笑)

具体的には、WildLightを活用するための辞書作成を、ワークショップを通じて学ぶスタイルになります。そう、自分で辞書を書きます。やはり、自分で書かないと自分のものになりませんものね!

セミナー最初は初級セミナーのおさらいをします。基本的な動作とメニューにある機能を、デモをご覧に入れながら説明いたします。その後に、参加者の皆さんに答えいただいたアンケート結果を課題として、それらを解決するためのWildLight辞書作りを行っていきます。もちろん、ワイルドカードの学習とWildLight特殊コマンドの学習をあわせて行っていきます。

途中、既存の辞書の中身をみんなで読み解いて、何をしているのかを理解するセッションも設けるつもりです。辞書はあるけど、何やってるの?・・・って知らない人が多いので、その考え方を学ぶことで、自分専用の辞書へ作りかえる力を身につけます。

中級セミナーは、今後の開催は未定ですので、WildLightを使いこなしたいと考えておられる方は、この機会に参加されることをお勧めいたします。

詳細は、以下のリンクをご覧ください。

東京ほんま会「WildLight中級セミナー」

 

ウエブにある用語集をWildLight辞書に変換してみる

インターネット上には専門分野に特化した用語集が多く公開されており、翻訳作業の中でその業界や分野で使用される用語を理解するために、良く利用されていると思います。ただ、インターネット上にあることで検索性が乏しく、PC内にある辞書と同じように簡単に検索出来たらと考えるのは、翻訳を仕事にしている人間なら当然のことでしょう。

私が良くやるのは、それらのウエブ用語集を変換してWildLight用辞書にしてしまうという方法です。一度変換しておけば、他への流用もできますからとても有益な作業なのですが、ただ、それを簡単に実現する方法がありませんよね?
私もいろいろな方法を使っていますが、1つの方法としてWildLightを使う方法です。

今回は、その方法の一例をご紹介します。

今回、題材にあげるのは統計用語集(http://software.ssri.co.jp/statweb2/gloss/glossary.html) です。この用語集を例にした理由は、通常、公開されている用語集には表形式が多く、それらはどちらかといえば変換が容易な形式ですが、この統計用語集は日本語と英語が複数行に跨いでおり、変換が難しいと思われたからです。

こういったウエブ用語集は、その作り方により、変換が可能なものとそうでないものに分かれますが、表示される画面のソースを見て判断することになります。今回は、以下のようなアプローチで変換を試みます。

  1. ソースファイルを読み解く。
  2. 変換するための作戦を決める。
  3. ワイルドカードとWildLight特殊コマンドを記述する。

1.ソースファイルを読み解く

統計用語集の「ア行」を表示し、ブラウザ上で右クリックしてソースを表示します。すると、こんな記述がみられます。

ア行

この場合、用語集として必要になるのは日本語と英語のペアですが、ソースファイルを上から下まで眺めていくと、どうも、この用語ペアは以下のような記述になっているようです。

<h3 id=”a022″>アドホック調査<br>ad hoc survey</h3>

2.変換するための作戦を決める

ソースを良く見て、すべてが以下のような構成になっているかを確認します。「<h3 id=”????”>」や「<br>」「</h3>」が他に使用されていないかもあわせて確認します。

<h3 id=”????”>検索語<br>置換語</h3>

他の読み行のソースも含めて確認し、すべてこの構成で成り立っていて、かつ、他に使用されていないことが確認できました。では、以下の作戦でやってみましょう。

  • 「<h3 」で始まるタグを用語ペアの先頭(3の後ろには半角スペースがあります)
  • 「<br>」をセパレータ
  • 「</h3>」を用語ペアの終端

これらの条件で用語ペアの検索を掛けて、対象に蛍光ペン付けし、WildLightの特殊コマンド ExtractH2Word で蛍光ペン部をワードへ抜き出します。

1回の作業で用語集ができそうな感じに見えますが、実は、<br>をタブに変換した後に特殊コマンド(ExtractH2Word)でワードへ抽出した場合、タブが消えてしまうという制限があるため、2段階で作業をする必要があります。つまり、まず、1)用語ペアを抜き、それから2)セパレータをタブへ置換する、という流れになります。

3.ワイルドカードとWildLight特殊コマンドを記述する

用語ペアの抜き出しの記述を考える前に、用語ペアを抜いた後の処理を少し意識しておきたいと思います。それは、今後もいろいろな形式の用語集を変換することになると想像され、二度目の処理としてセパレータの置換が必ず発生するわけですから、できれば毎回同じWildLight辞書で処理できるように、最初の処理である「用語ペア抜き」の結果が、いつも同じスタイルになるようにルールを決めておきたいと思います。

そのルールとは、用語ペアは「●」で囲み、セパレータは「■」とするスタイルです。

では、今回のケースでも、抜き出し結果がこのスタイルになるように用語ペアを抜いてみます。

  • 「<h3 」で始まるタグを「●」に変換
  • 「<br>」を「■」に変換
  • 「</h3>」を「●」に変換

次に、作業の流れを作ります。

  1. 蛍光ペンを付けずに、「<h3 」で始まるタグを「●」に変換
  2. 蛍光ペンを付けずに、「<br>」を「■」に変換
  3. 蛍光ペンを付けずに、「</h3>」を「●」に変換
  4. 「●」と「●」に挟まれた文字列へ蛍光ペンを付ける。
  5. 蛍光ペン部を新文書へ抽出する。

この流れにより、「●検索語■置換語●」というスタイルで用語ペアが抽出されることになります。では、具体的にワイルドカードと特殊コマンドで記述してみます。

  1. WILDCARD:ON
    まず、ワイルドカードが利用できるようにONにします。
  2. ~\<h3 *\>(tab)
    置換後の文字に蛍光ペンを付けないため、先頭に「~」を付与し、検索語「\<h3 *\>」を記述します。(「<」や「>」などのワイルドカード文字を検索語とするときは、その前に「\」を付けなくてはなりません。)
    そしてセパレータのタブを入れ、置換語の「●」を記述します。
  3. ~\<br\>(tab)
    同様に蛍光ペンなしの「~」を先頭に入れて、検索語「\<br\>」を記述し、セパレータのタブを入れて、置換語の「■」を記述します。
  4. ~\<\/h3\>(tab)
    同様に蛍光ペンなしの「~」を先頭に入れて、検索語「\<\/h3\>」を記述し、セパレータのタブを入れて、置換語の「●」を記述します。
  5. ●*●
    ●で挟まれた文字列をすべて蛍光ペン付けします。
  6. ExtractH2Word
    蛍光ペンがついた文字列をワードへ新規文書として抽出します。

これらを記述した辞書を作成し、統計用語集のア行のソースに適用してみます。
(「WLDIC_Sample_抽出_統計用語集.txt」としてWildLight Dic Library に登録しておきましたので、ご覧ください)

抽出用語ペア

上手く用語ペアが抽出できたようです。あとは、最後の料理として、「●」を消し、「■」をタブに置き換えます。そのための記述は以下のようになります。

  1. WILDCARD:ON
    ワイルドカードが利用できるようにONにします。
  2. ~●(*)●(tab)\1
    置換結果に蛍光ペンが付かないよう先頭に「~」を付与し、「●」で挟まれた文字列を検索して、「●」を除いた文字列へ置き換えます。
  3. ~■(tab)^t
    置換結果に蛍光ペンが付かないよう先頭に「~」を付与して「■」を検索し、タブ(^t)へ置換します。

これらを記述した辞書ファイルを「WLDIC_変換_●■●記述を辞書へ変換する.txt」として登録してありますので、ご利用ください。(今後、「●検索語■置換語●」スタイルで用語ペアを抽出すれば、この辞書を流用できます)

この辞書を、上記の抽出結果に適用すると、以下のようになります。

変換後

この作業を各「読み行」で実施し、変換された用語ペアを合体すれば、WildLight辞書の出来上がりです。

こんなやり方で、ウエブに公開されているいろいろな用語集を変換してみると良いと思います。

[Version up] WildLightDictionary 0.05b

WildLightDictionary をバージョンアップしました。多分、これが最終形になると思います。

【今回の主な変更点】

  • 指定フォルダ内のテキストファイル検索を、検索窓から行えるようにしました。また、正規表現を使用できるようにしました。
  • テキストファイル検索のキーを Win + B から Win + F に変更しました。検索文字列を範囲指定してキーを押せば、その文字列が検索されます。範囲指定なしでキーを押した場合は、検索窓が現れます。
  • クリップを独立したファイルへ保存するようにしました。また、範囲指定せずに Win + C を押した場合、クリップを表示するようにしました。
  • 最新版 WildLight.dotm をデスクトップへダウンロードするメニューを追加しました。また、ワードのアドインファイルを登録する、スタートアップフォルダーを開くメニューを追加しました。

その他、詳細は同梱されいている readme.txt をご覧ください。

WildLightDictionary 0.05b