リンクは自由!
『月刊言語』2004年7月号pp. 76-77 掲載
後藤 斉 (ごとう ひとし)
コンピュータの世界が日進月歩であることは確かに間違いないが、 その一方において、この世界にも十年二十年を経てなお通用する技術や知識も ある。例えば、過去においても現在においても、OSやファイルといった概念は コンピュータを扱う上での基本である。このような基礎知識はコンピュータを 事務機器や趣味の道具として使う際にはもちろん、学問研究に利用しようと するならばまして、必須の知識である。
コンピュータを言語の研究に利用するのであれば、文字コードと テキストファイルの概念、それにテキストファイルを扱うツール類について 知らずには済ませられない。テキストファイルは文字データの連続 (改行コードを含む)からなるシンプルなデータであって、特定の プログラムの専用データではない。言語研究から見たその長所は、 テキストファイルを扱える、検索、置換、編集などの作業のための 多様なツール類がそろっているところにある。 Vector ソフトウェア・ライブラリ (http://www.vector.co.jp/) のサイトで、自分のOSに合わせて 「ユーティリティ−テキストファイル用」のジャンルの中から選ぶことができる。 このようなこともできるのかと、驚くほどである。
この種のツールは「文系」においてあまり活用されているとは言えない。 その存在意義を理解した上で便利さを体験すれば、コンピュータの より高度な利用につながるであろうに、残念なことである。これらのツールの 代表はテキストエディタである。一見、ワープロに似ているが、紙に印刷する 文書を作るためというより、テキストファイルを編集するためのものであり、 そのための機能が豊富に備わっている。ありがたいことに、無料で入手できる テキストエディタは数多い。
UNIX 系ツールと呼ばれる小技を得意とするツール類もあり、整形のsed、 検索のgrep、整列のsort、ファイル比較のdiffなど、それぞれ特定の機能に 特化している。UNIXの世界では、このような単一機能のツールを連携させて 使うことが好まれて、多様なツールが開発され、機能も洗練されていった。 Windows や Mac の対応版も早くから作られたし、多くのパソコン用のソフトにも 影響を与えている。Windows や Mac しか使わないにしても、その考え方を 尊重してしかるべきである。例えば、K2工房による K2Editor (http://web.kyoto-inet.or.jp/people/koyabu/k2editor.html) などのような grep 機能の充実したエディターからでもそのすぐれた点は 感じられるはずである。
これらのツールを十分に活用するには、正規表現の知識が欠かせない。 正規表現とは、文字列の検索において柔軟なパターンで指定するための記法である。 慣れるとかなり複雑な種類の文字列を短く表現することができ、検索や置換に 絶大な威力を発揮する。正規表現のみを扱った専門書もあるが、小室暁生氏による 「正規表現最新リンク 2004」 (http://www2.famille.ne.jp/~akio1998/l_grep.html)を頼りに、自分のレベルや 関心に合った参考サイトを探すこともできる。例えば、zaco氏による 「国語の先生の為の正規表現」 (http://homepage2.nifty.com/zaco/rexp/) ならば、本誌の読者の多くも違和感をあまり感じずに読むことができるであろう。
これらのツールに物足りなさを感じるようになればしめたもので、 次は Perl などの言語にスムーズに進んでいけることであろう。 本格的なプログラミングはハードルが高いが、自分の必要とする目的に合った 限定された機能のツールを作るだけならば、実はそれほど大きな障害はない。 上記の「国語の先生の為の正規表現」には Perl への応用例もあり、 そこに挙げられたサンプルを少しづつ変えて実験しながらプログラミングに 慣れていけばよかろう。
テキストファイルは汎用的なデータ形式であるから、その操作に習熟することは 決して無駄にならない。コンピュータが今後どのような発展をとげるにせよ、 それは必ず役に立ち続けるはずである。
(東北大学大学院文学研究科/言語学・ロマンス語学)
copyright GOTOO Hitosi 2004
著作権法規に則って利用することができます。