sed による文字列置換で後方参照の機能を使用すると、パターンに一致した実際の文字列を、置換後の文字列を構成する際に参照することができます。
正規表現に一致した全体の文字列は、&
で参照することができます。
$ sed 's/[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}/[&]/' input.txt
パターンに一致した文字列を、複数の部分に分けて後方参照したい場合は、次のように正規表現パターンを \(
と \)
で囲んでグルーピングします。
参照時は、それぞれのグループごとに \1
、\2
のように参照します。
$ sed 's/\(pattern1\) \(pattern2\)/\2\1/g' input.txt
pattern1
と pattern2
には任意の正規表現が記述されていると思ってください。