按半周进行的多周期控制 multicycle controlled by half-cycle
といった感じで前半に中国語、後半に英語の綴られたページを発見した。
1000組を超える大量の通信関係用語集である。
使えそうな用語集なので早速Multitermに取り込もうと思ったが、
Excelに貼り付けたテキストをよく見ると中国語と英語の間に区切り文字もタブもない。
文字列の先頭からいくつが全角文字かが分かれば簡単に仕分けできるのだが、
どうもそこまで便利な関数は転がっていないらしい。
そこで苦肉の策。
1)貼り付けたテキストはA列に入っているのでA1にラベル「org」を入力(適当)。
セルB2に「先頭2文字が全角であれば0を返す」ことを狙い
=if(left($A2,2)=leftb($A2,4)=0,1) と入力した。
単語の最大長がわからないので、とりあえずF列までコピーし、先頭6文字まで対応。
2)B列が0、C列が1であれば「3文字目は半角である」ことが分かるので
該当行のG列に全角の文字数(であると推定される)「2」を入力。
同様に全角文字の数(推定)をG列に書き込んでいくと700件ほど埋まった。
原始的にオートフィルタで絞り込んで入力したのでここは関数なし。
3)G列でフィルタをかけ、本当にセルGnが2のときセルAnが全角2文字+半角なのか目視で確認。
やはり(?)途中に記号や英字が入っていてずれている行がいくつかあった。
ずれのある行のみG列の値を削除。
同様に推定5文字までを検証。
4)H列を「chn」、I列を「eng」と名づけ(これまた適当)
セルH2には中国語(全角)の文字列を取り出すため
=left(a2,g2)
セルG2には残りの文字列(英語)を取り出すため
=right(a2,len(a2)-g2)
これで中国語5文字までの中英対照表が一応できる。
実際は同様に15文字まで作業し、残りは手作業で仕分けした。
それでも1000件ちまちま手作業よりは速いだろうと思う。