2018
05
28

正規表現でマッチした文字列を再利用するには

正規表現でマッチした文字列を再利用するには後方参照(Backreference)を利用します。

以下はsedを用いた例です。

echo 'abc12345' | sed -E 's/([a-z]{3})([0-9]{5})/\1FOO\2BAR/g'

英小文字3文字の末尾に"FOO"という文字列を付け足し、数字5文字の末尾に"BAR"という文字列を付け足します。

sed01.png

echo 'abc12345' | sed -E 's/([a-z]{3})([0-9]{5})/\1FOO\2BAR/g'

([a-z]{3}) : 1つ目のパターンマッチ。英小文字3文字にマッチする。
([0-9]{5}) : 2つ目のパターンマッチ。数字5文字にマッチする。
\1 : 1つ目のパターンにマッチした文字列を参照する。
\2 : 2つ目のパターンにマッチした文字列を参照する。

パターンマッチはカッコ()の中で定義します。

以上。
Comment



Only the blog author may view the comment.


Trackback
Trackback URL

«  | HOME |  »

奇妙な風景 Unique Scene
<< >>

プロフィール


最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


スポンサード リンク


FC2カウンター


検索フォーム


RSSリンクの表示


リンク


ブロとも申請フォーム


QRコード