|
「 \f はマクロ文の中では使って良いが、普通の検索・置換では使わない方が良い」
という
話は6年程前、某巨大掲示板で聞いた覚えがあります。「マクロなら良い」で、今も
会社PC では動作しています。秀丸 正規表現専門書ではありませんが、ソフトバンク・
パブリッシングが2005 年に出した「正規表現の達人 第二版」(検索したら今も販売
中)
では秀丸の \f について解説されています。以下抜粋します(272〜273ページ)。
----------抜粋はじめ---------
また、「タグ付き正規表現による置換」という後方参照と同様の機能もサポートされ
ており、
「\0」「\1」「\2」…で参照できますが、後方参照される文字列は「( )」ではなく
「\f」で区切って
指定します。つまり「( )」が持っている機能はあくまで正規表現のグループ化を指
定するためだけの
ものです。「\f」で文字列を区切る際、検索文字列の先頭と末尾に「\f」を指定する
必要はありません。
たとえば、[0-9]\t[0-9]という正規表現の[0-9]の部分を参照したい場合は
\f[0-9]\f\t\f[0-9]\f ではなく、[0-9]\f\t\f[0-9]とすればよいことになります。
この場合、「\0」「\1」…の参照箇所は以下のようになります。
[0-9]\f\t[0-9]
\0− −\1− −\2−
その他、「\f」のタグ付けの詳細は秀丸ヘルプの詳細を参照して下さい。
----------抜粋おわり---------
素人の自分には、この解説文の適否を判断できませんが、今、大型書店でも正規表現
の解説書は
古い物が多く、かつ種類も少なく上記の本はまだ新しい本だと思います。案外、今も
「バイブル本」と
して参照している人は多いのではないでしょうか。
マクロライブラリにも \\f を使ったマクロが収録されており、先人の作ったマクロ
文から自分なりに
勉強させてもらいました。今後 \\f に何らかの変化があったとしても、全く動作し
ないのは
避けて欲しいです。システム課に言っても「お前たちで作ったんだから、お前たちで
直せ」でお仕舞いです。
|
|