« 原文の構造解析3 | Main | 原文の構造解析4 »

2014.02.19

重複処理の防止

一般に検索置換では、ある処理の対象の一部が別の処理の対象となっているということがある。これは色々な局面で生ずる。

置換翻訳で起きる重複(複合語)
処理1:product を製品と訳す
処理2:financial product を金融商品と訳す
この例では product が重複している。

置換翻訳で起きる重複(単語)
処理1:liver を肝臓と訳す
処理2:delivery を配送と訳す
この例では liver が重複している。

これを順番に処理すると、思わぬ誤訳が生じるうえに、処理2の検索ができなくなる。複合語の例では「financial product」がまず「financial 製品」になり、当初あった「financial product」が消えてしまい「金融商品」という訳ができなくなってしまう。単語の例では「delivery」が「de肝臓y」となるうえに、欲しかった「配送」という訳は与えられない。

そこでこれを防ぐため、長いもの、大きなものから先に処理する。つまり

複合語なら
処理1:financial product を金融商品と訳す
処理2:product を製品と訳す
とする。

単語なら
処理1:delivery を配送と訳す
処理2:liver を肝臓と訳す
とするのである。

改行区切りでも重複の問題が生ずる。

処理1:as well as で区切る
処理2:as で区切る
この例では as が重複している。

ここでは問題の生じ方が置換翻訳と異なる。置換翻訳では一度違う文字に置換翻訳(例えば英文から和文)された部分は再び検索の対象にはならないのに対し、改行区切りでは置換後も同じ文字が残されているので、処理に重複が起きるのである。

その重複への対策を講じないで処理1の次に処理2を行うと、折角の処理1の一部が処理2により置き換えられてしまう。一括りにしておいた as well as が途中でさらに改行されるのである。逆に処理2をしてからでは処理1は検索されなくなる。そこで「区切り防止」で述べたような工夫が必要になる。

重複防止の工夫は各種処理を開始する前に行うのが理想的であるが、なかなかそうはできない。実際に使っていて初めて思わぬところで区切られるとか、とんでもない置換翻訳が行われているとわかることの方が多い。意図せぬ重複処理は何度も起きると心得て、気付いたときに小まめに重複処理防止の修正していかねばならない。

応急措置として、問題を起こす処理の直前に、その重複する処理の検索対象にならないようにする処理を書き加える。つまりワードなら検索されないよう書式を掛け、秀丸なら特別な文字の囲みを付加して、とりあえずロックしておくのである。

そのようなロック処理がある程度溜まったら、それらを抜き出して一連の各種処理を始める前にまとめて置くと、後で類似処理に応用がしやすくなる。

|

« 原文の構造解析3 | Main | 原文の構造解析4 »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/20048/59162553

Listed below are links to weblogs that reference 重複処理の防止:

« 原文の構造解析3 | Main | 原文の構造解析4 »