ワイルドカードと正規表現

投稿者: | 2019-10-13

ワイルドカードを覚えたのは、まだPCを使うようになる前、MS-DOSの基本操作を覚えた頃だった。特定の規則に合うファイル名を指定する手段として有効で便利な仕様だと思ったものだ。一方の正規表現は、テキストエディタを使うようになってからだったと思う。当初は言葉だけ聞いてどういう表現なのかと思っていた。
正規表現の定義では、いくつかの文字列を一つの形式で表現する方法、とあってわかりにくいが、そのうちにワイルドカードのように、検索語の定型を指定する方法と理解した。ワイルドカードは任意の一文字か0文字以上の文字列を記号で示すことしかできないが、正規表現はもっと多くの定型を示すことができる。
正規表現は、大量の文字列から特定の定型に合う部分を検索する手段として必要である。定型を示すために様々なルールがあるが、全てではなくても頻度高く使う物は覚えておいて損はない。UNIXでは標準的にこの正規表現を使うらしい。Windowsでもテキストエディタなどの高度なことが出来るツール類ではだいたい正規表現を使うことができる。
ただ、正規表現も基本的な書式は共通しているものの、ツールにより微妙な違いはあるようだ。正規表現を司るライブラリが何かによってそういう違いが出てくる。WZ EDITORなど、多くは独自のライブラリによる正規表現への対応であるが、外部のDLL、ライブラリに頼っているアプリケーションもあり、そういうものの一部はライブラリを互換性のあるものに交換することができるようになっている場合がある。秀丸も、標準の独自ライブラリから、外部ライブラリに変更することができるし、サクラエディタも同様のことができるようである。
正規表現ライブラリを変えることで、標準の正規表現では使えなかった表現が使えるようになったりして、検索オプションがより強化・拡張できる。ただし、標準的・基本となる正規表現についてはほぼ共通していると思われるので、余程高度な検索をしない限りはあまり気にしなくて良い。