PCRE

cygwinのpcreパッケージをインストールすると、pcretext.exeというコマンドが使えるようになる。これは、pcreの対話的環境で、起動すると、下のように使うことができる。

$ pcretest
PCRE version 6.3 15-Aug-2005

  re> /(?P<pn>\(((?>[^()]+)|(?P>pn))*\))/
data> ((()))
 0: ((()))
 1: ((()))
 2: (())
data> 

これは結構便利かもな。

      • -

ファイルを読み込んで実行させることもできる。
下のようなファイルを用意。

/(?P<pn>\(((?>[^()]+)|(?P>pn))*\))/
((()))
(aa((bb)c))

/aa/
aaabbbaa

次のように実行される。

$ pcretest [inputfile]
PCRE version 6.3 15-Aug-2005

/(?P<pn>\(((?>[^()]+)|(?P>pn))*\))/
((()))
 0: ((()))
 1: ((()))
 2: (())
(aa((bb)c))
 0: (aa((bb)c))
 1: (aa((bb)c))
 2: ((bb)c)

/a*/
aaabbbaa
 0: aaa