テキスト処理に役立つツール・データ類
awkによるテキスト処理 awk(gawk)によるテキスト処理プログラムを紹介しています。 perlによるテキスト処理 perlによるテキスト処理プログラムを紹介しています。 内容はawkによるテキスト処理とほぼ同等です。 便利なツール C言語で書かれた便利なツールを紹介しています。 サンプルデータなど プログラムのテスト等に使えるデータ類を集めてあります。
以下は、興味ある人のための読み物です。
テキスト処理とは
テキスト処理という言葉には何通りかの意味があります。細かい意味はともかく、 コンピュータの世界で 通常次の二つに分けられるでしょう。1.人間が読み書きする文書(テキスト)を処理する
ワープロやDTPソフトも通常人間が 読み書きする文書を処理するので、Wordや一太郎を使うことも この意味でのテキスト処理に含まれます。2.コンピュータの世界でのテキスト(テキストファイル)を処理する
テキストファイルというのは難しい概念ですが、 特徴としてという点が挙げられます。
- OSやアーキテクチャが異なるコンピュータでも処理できる。
- テキストエディタで読み書きできる。
ワープロで作成したファイル、たとえばWordで作成したDocファイル は、Word がインストールされていない他のパソコンや、 Unix やlinux のOSで動いているシステムでは処理できません( OpenOffice 等を利用すれば処理できますがこれは例外的で、すべてのワープロソフトや 表計算ソフトの互換性を保障しているわけでもありません )し、 テキストエディタ(例えばnotepad)では処理できません。 そのためWord や一太郎を使うことはこの意味での テキスト処理には含まれません。
一方、表計算ソフトのデータをテキストファイルとして書き出したファイルは 人間が読み書きする文書では無い場合 (単なる数字データの羅列など)も多いですが、 他のOSでも利用でき、テキストエディタで処理できるため、「テキストファイル」と呼ばれているわけです。
ここでは「テキスト処理」という言葉を2の意味(=テキストファイルの処理)で 使うことにします。テキストファイルに関しては ここに 詳しい説明があります。
なぜテキスト処理が必要か?
現在、コンピュータを使う際に「テキスト処理」を意識することは あまりありません。 もともとMac はほとんどテキスト処理を意識させませんでしたし、 Windows も Windows Me になるとほとんどDos(テキスト処理能力が無いと使いこなせない) の世界を感じさせなく なっています。 恐ろしいことに、linux のサーバの設定さえも GUI を使って行う技術者(もはや技術者とはいえませんが)も 存在するようです。
しかし、テキスト処理に疎いと以下のような問題があります。
- せっかくコンピュータを使っているのに、処理効率が悪い。
一般に、GUIを利用したワープロや表計算ソフトは 小規模なデータを加工したり、 きれいな印刷物を作成したりすることに最適化されています。 そのため、大規模なデータを一括で処理する ことには向いていません。大規模なデータを扱うためには テキスト処理の技術が必要です。
- 他人とデータをやりとりするとき(特にOSが異なるとき)に困ることがある。
現代では、携帯電話ユーザも、Macを使うデザイナーも 大型汎用機の技術者もみんなメールを利用していますが、 これを可能にしたのは テキストファイルの交換というメールの仕組みです。 単純なメールではなく、より複雑なデータを他とやりとりするには テキスト処理の技術が必要です。
- コンピュータの仕組みに強くなれない。
見かけこそ色々変化してきていますが、 コンピュータの仕組みはもう何十年も変わっていません。 昔、コンピュータを利用するにはまずテキストエディタ(もっと 昔ならカードパンチャー)の使い方を覚え、 コンピュータに命令を与え、わけのわからないエラーメッセージ( これは今も変わりませんが) に悩みながら力をつけていったものです。
ところが、今は単にマウスの操作で事が足りるためか、 何年もパソコンを使っているのにまったく コンピュータの仕組みに詳しくならない人がいます。 メーカの言い分は、「仕組みなど知らなくても使えます」 ですが、これは真っ赤な嘘とまでは言わなくても 真実からはだいぶ遠いです。
確かに、Web を閲覧したりメールをやり取りするだけなら 現状でも「使える」と思いますが、 「コンピュータを使って仕事や研究を効率化したい」 と真剣に考えている人は、コンピュータの仕組みをある程度 知っていたほうが得でしょう。
テキスト処理の実践
そこで、このサイトでは、長年PCおよびUNIX上で数々の開発を 行ってきており、 現在は 検索エンジン を開発中の著者が開発したツールやノウハウを公開していきたいと思います。
Copyright © 2004 TKEN