\( \) と \n

正規表現

\( \) で囲んだところを順に \1 \2 ... として使える
置換に使うと置換元の一部を使える
例:
% echo 'aaa' | grep '^\(.\)\1\1'
aaa bbb 等、行頭に同じ文字が3つある時に一致

% echo 'abab' | grep '^\(.\)\(.\)\1\2'
abab 1212 等、行頭から2文字の繰り返しに一致

% echo 'abcd' | sed -e 's/^\(.\)\(.\).*$/1文字目は \1、2文字目は \2 です/'

vi の ex モードや、emacs の replace regexp でも使える。





\{n,m\}
ハッカーに一歩近づく Tips

Copyright (C) 2008 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市