OpenWindows ユーザーズガイド (上級編)

メタキャラクタの検索

テキストファイル内でドル記号 ($) を含む行を検索すると想定します。正規表現内のドル記号の前にバックスラッシュ (¥) を付けると、$ が持つ特殊な意味を無視 (エスケープ) するよう grep に指示できます。その他のメタキャラクタ (& ! . * ? および ¥ 自身など) についてもこの方法を適用できます。

たとえば、次の正規表現は、ピリオド (.) で始まる行と一致するため、nrofftroff の書式要求 (ピリオドで始まるもの) を検索するときに非常に便利です。

$ grep '^¥.' filename

次の表 4-1 は、grep で利用できる検索パターン文字のうち、頻繁に使われる文字のリストです。

表 4-1 grep の検索パターン文字

文字 

意味 

^  

テキスト行の先頭 

$  

テキスト行の終わり 

.  

任意の 1 文字 

[...] 

角括弧内のリストまたは範囲に含まれる任意の 1 文字 

[^...] 

角括弧内のリストまたは範囲に含まれない任意の 1 文字 

*  

その直前の文字または正規表現のゼロ個以上の繰り返し 

.* 

任意の 1 文字のゼロ個以上の繰り返し 

¥  

その後の文字が持つ特殊な意味を無効にする 

これらの検索パターン文字は、vi テキストエディタ内での検索にも使えます。