frame_decoration

「検索置換ラクダ と ConvChar について」の編集履歴(バックアップ)一覧はこちら

検索置換ラクダ と ConvChar について」(2008/04/09 (水) 00:28:23) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*検索置換ラクダ と ConvChar について いずれも、Mac(クラシック)で利用できるテキスト置換アプリケーション。それぞれの名前と「青空文庫」をいっしょにキーワード検索すると、いつくかの紹介ページがあるので、参考にできる。 特徴として両方とも、安定している、変換辞書をテキストファイルとして利用・更新できる、わかりやすい。 大きなちがいは、 ・ConvChar は、正規表現をつかえない、が、置換が超高速。 ・検索置換ラクダ は、ConvChar のスピードには劣るものの、perl を経由しているので正規表現をつかった置換が可能。  **ハート計画では、置換場面によって併用することを提唱。 *検索置換ラクダ について 正規表現を利用するばあい、置換リストの行に「(tab)regex」と記述。大文字では機能しないので注意。正規表現が不要な置換のばあいは「(tab)regex」も不要。スピードも向上する。 それでも ConvChar の処理スピードにはおいつけないので、けっきょく、正規表現が不要な置換のばあいは、ConvChar 利用がいい。置換リストが少ないようであれば、いずれも超高速。ただ、外字注記やアクセント分解のように行数が多いばあい、その差が顕著にでる。 *事例 ・アクセント分解置換のために3ステップの置換辞書を用意。 ・処理1と3では(正規表現不要の)単純置換。2のみ正規表現を使用。 ・作業環境がバラバラだと効率がわるいと思って、いずれも検索置換ラクダで通すことにした。 ・ところが、処理1と3では置換リストが多量なため、処理に時間がかかった。そのうえ「Out of memory !」で、結局処理できない。 ・そこで処理1と3のみ ConvChar で置換してみた。すると、同じ作業内容のはずなのに、信じられないくらいのスピードで処理終了した。 ・対象:「作家別テキストファイル」からアクセント分解〔〕部分を抽出したリスト(1358行、49KB) ・検索置換ラクダ による処理1にかかった時間が、およそ5分くらいか。 ・いっぽう、ConvChar による処理1が、およそ20秒(以下)。 ・処理3にいたっては、検索置換ラクダ では Out of memory で作業放棄。ConvChar による処理3は、やはり20秒くらい。 *併用の注意点 スピードやメモリ負担の問題は、処理行数が多いことが原因だとおもわれるので、少ない置換リストであれば、検索置換ラクダもじゅうぶんに速い。 また、ConvChar では置換辞書のうしろの行から処理するのに対し、検索置換ラクダではたぶん、どうやら前の行から処理するもよう。期待する結果と異なるばあいがあるので、それぞれ要注意。 それから、ConvChar には OS X 版がまだない*1 ので、同じ作業を Unicode でするばあいには、検索置換ラクダの X 版に依存することになる(かもしれない)。  *1 CharConvX なるソフトがあるものの未確認。 それから、処理結果の出力ファイルネームのちがい。 ConvChar は、元ファイル名「+」(半角プラス)が付随した新規ファイルが作成される。いっぽう検索置換ラクダは、元ファイル名のまま。つまり上書きするので、元ファイルは別個保存しないと消失する。アクセント分解変換のように、アプリの併用・複数置換辞書の併用を要するばあいは、とくに注意。 2008.4.3 しだひろし/PoorBook G3'99 翻訳・朗読・転載は自由です。 ---- #comment
*検索置換ラクダ と ConvChar について いずれも、Mac(クラシック)で利用できるテキスト置換アプリケーション。それぞれの名前と「青空文庫」をいっしょにキーワード検索すると、いつくかの紹介ページがあるので、参考にできる。 特徴として両方とも、安定している、変換辞書をテキストファイルとして利用・更新できる、わかりやすい。 大きなちがいは、 ・ConvChar は、&strike(){正規表現をつかえない、が、}置換が超高速。 (かんちがいしてました。要確認) ・検索置換ラクダ は、ConvChar のスピードには劣るものの、perl を経由しているので正規表現をつかった置換が可能。  **ハート計画では、置換場面によって併用することを提唱。 *検索置換ラクダ について 正規表現を利用するばあい、置換リストの行に「(tab)regex」と記述。大文字では機能しないので注意。正規表現が不要な置換のばあいは「(tab)regex」も不要。スピードも向上する。 それでも ConvChar の処理スピードにはおいつけないので、けっきょく、正規表現が不要な置換のばあいは、ConvChar 利用がいい。置換リストが少ないようであれば、いずれも超高速。ただ、外字注記やアクセント分解のように行数が多いばあい、その差が顕著にでる。 *事例 ・アクセント分解置換のために3ステップの置換辞書を用意。 ・処理1と3では(正規表現不要の)単純置換。2のみ正規表現を使用。 ・作業環境がバラバラだと効率がわるいと思って、いずれも検索置換ラクダで通すことにした。 ・ところが、処理1と3では置換リストが多量なため、処理に時間がかかった。そのうえ「Out of memory !」で、結局処理できない。 ・そこで処理1と3のみ ConvChar で置換してみた。すると、同じ作業内容のはずなのに、信じられないくらいのスピードで処理終了した。 ・対象:「作家別テキストファイル」からアクセント分解〔〕部分を抽出したリスト(1358行、49KB) ・検索置換ラクダ による処理1にかかった時間が、およそ5分くらいか。 ・いっぽう、ConvChar による処理1が、およそ20秒(以下)。 ・処理3にいたっては、検索置換ラクダ では Out of memory で作業放棄。ConvChar による処理3は、やはり20秒くらい。 *併用の注意点 スピードやメモリ負担の問題は、処理行数が多いことが原因だとおもわれるので、少ない置換リストであれば、検索置換ラクダもじゅうぶんに速い。 また、ConvChar では置換辞書のうしろの行から処理するのに対し、検索置換ラクダではたぶん、どうやら前の行から処理するもよう。期待する結果と異なるばあいがあるので、それぞれ要注意。 それから、ConvChar には OS X 版がまだない*1 ので、同じ作業を Unicode でするばあいには、検索置換ラクダの X 版に依存することになる(かもしれない)。  *1 CharConvX なるソフトがあるものの未確認。 それから、処理結果の出力ファイルネームのちがい。 ConvChar は、元ファイル名「+」(半角プラス)が付随した新規ファイルが作成される。いっぽう検索置換ラクダは、元ファイル名のまま。つまり上書きするので、元ファイルは別個保存しないと消失する。アクセント分解変換のように、アプリの併用・複数置換辞書の併用を要するばあいは、とくに注意。 公開:2008.4.3 更新:2008.4.9 しだひろし/PoorBook G3'99 翻訳・朗読・転載は自由です。 ---- #comment

表示オプション

横に並べて表示:
変化行の前後のみ表示: