日本語KWICコンコーダンス作成マクロ(WSH)
→画像
(クリックするとテキストファイルがそのまま表示されてしまうので、スクリプトそのものをダウンロードするには画像か圧縮ファイルの方をクリックする。)
【mykwic_1】 データファイルと同じフォルダにスクリプトを置く。同じフォルダに、表示結果を(日付をつけた)別ファイルとして書き出す。同名のファイルがある場合には追記する。ある程度の量のテキストファイルはこなせるはずである。ファイルの数によってエラーが出るか、速度が落ちるかなど、まだ確かめていないが、おそらく一瞬で表示できるだろう。
【mykwic_2, 2b】 検索結果をHTML形式で表示する。複数の拡張子を指定できる。ファイルの数や種類が多いほど表示に多少の時間がかかるが、実用レベルである。
【mykwic_3】 mykwic_1に行番号を表示させたものである。
【使い方】
使い方は下の画像を参照(mykwic_1)。マクロを実行し、テキストファイルの拡張子を3文字で入力する。続いて検索語(日本語可)を入力する。
【改版履歴】
◇ExcelVBAでMiniKWICを作ったが、KWICは一括処理に向くので、もっと強力なものができるのではないかと思い、作成してみた。半角文字や記号によって検索語の表示位置がずれてしまうので、転記ファイルではすべて全角文字に改めたかったが、VBScriptにはStrConv関数がないため、半角文字には半角スペースを加えることで表示をそれらしくするように工夫している。ただし、検索結果の表示(とくに前データ)や正規表現のパターンの入力(とりこぼしがあるはずである。)については、さらに改善する必要がある。(8.28)◇該当ファイルにタグジャンプするような感じにしたかったので、検索結果をHTMLファイルにするバージョン(Ver.2)を作った。これだと検索語句が色分けできておもしろい。ブラウザの表示処理により検索語の表示位置が多少ずれてしまうので、この方法では半角文字にいちいち半角スペースを加える意味がないかと考えたが、結果は意外だった。これがないとHTMLのタグが生きてしまうのである。つまり、抜き出した個所によって表示が乱れてしまうのだ。タグを無効にするためにも、この操作は必要であるらしい。このHTML形式での出力はmygrep(TJSoft-28)でも応用できそうだ。また拡張子を2つまで併記できるようにした。「txt htm」のようにして、検索の幅を広げることができる。ただし、ファイルの数が多くなると、やはり検索(あるいは書き出し?)スピードは落ちてくるようである。〔追加〕Split関数による配列の処理がよくわからなかったが、ようやく手探りでループさせた。半角スペースで区切って、4つでも5つでも入力できるはずだ。もちろん、テキストファイルに限る。また、2bでは<pre>タグを使ってみた。(9.1)◇《mykwic_3》では、行番号を表示させてみた。2回目にループしたとき、なぜか行番号表示が1つ増えてしまい、実際の行とずれができる。表示の段階で1を減ずることで対処したが、本当の理由が分からないままなので本来的な解決にはなっていないかと思う。(9.19)
@検索したいテキストファイルを一つのフォルダにまとめておく。同じフォルダにmykwic_1.vbsを置く。
拡張子(テキストファイル対象・3文字)を入力する。続けて検索語(日本語可)を入力する。
【mykwic_2】
A変換結果: ひらがな−カタカナ−漢字の順に(コード順に)ソートする。
改行は/に変換し、1行に表示している。空白には全角の*を充てている。
【mykwic_2】
【mykwic_2b】
【mykwic_3】