某所でWildLightセミナーを開催したのですが、こんな課題をいただきました。
- 〇〇〇億〇〇百万円 ⇒ 〇〇,〇〇〇 million yen
ex. 158億32百万円 ⇒ 15,832 million yen - 〇〇億〇〇百万円 ⇒ 〇,〇〇〇 million yen
ex. 11億70百万円 ⇒ 1,170 million yen - 〇億〇〇百万円 ⇒ 〇〇〇 million yen
ex. 6億47百万円 ⇒ 647 million yen - 〇〇百万 ⇒ 〇〇 million yen
ex. 6百万円 ⇒ 6 million yen - 〇〇〇億〇百万円 ⇒ 〇〇,〇0〇million yen
ex. 530億2百万円 ⇒ 53,002 million yen - 〇〇億〇百万円 ⇒ 〇,〇0〇 million yen
ex. 10億9百万円 ⇒ 1,009 million yen - 〇,〇〇〇,〇〇〇千円 ⇒ 〇,〇〇〇 million yen
ex. 9,144,781 ⇒ 9,144 million yen (下3桁を削除)
これを実現するためのWildLight辞書を作ってみました。
「DEMO_変換_和数字を英語へ.txt」として公開しておきました。
辞書の中身は、以下のような記述になっています。
WILDCARD:ON Zen2Han,[0-9] ([0-9]{1,2})([0-9])億([0-9]{2})百万 \1,\2\3 million ([0-9])([0-9])億([0-9]{2})百万 \1,\2\3 million ([0-9])億([0-9]{2})百万 \1\2 million ([0-9]{1,2})([0-9])億([0-9])百万 \1,\20\3 million ([0-9])([0-9])億([0-9])百万 \1,\20\3 million ([0-9])億([0-9])百万 \10\2 million ([0-9])億 \100 million ([0-9]{1,3},[0-9]{3}),[0-9]{3}千 \1 million ([0-9]{1,3}),[0-9]{3}千 \1 million ([0-9,]{1,11})百万 \1 million 百万 million 円 yen
1行目:ワイルドカードモードに切り替えます。
2行目:全角の数字を Zen2Han コマンドで半角に変換します。
3~5行目:「〇〇〇億〇〇百万」を置換します。
6~8行目:「〇〇〇億〇百万」を置換します。
9行目:「〇億」を置換します。
10行目:「〇〇〇,〇〇〇,〇〇〇千」を置換します。
11行目:「〇〇〇,〇〇〇千」を置換します。
12行目:「〇〇〇,〇〇〇,〇〇〇百万」を置換します。
13行目:「百万」を置換します。
14行目:「円」を置換します。
お役に立つようでしたら、お使いくださいませ。