LinuCレベル1 GNUとUnixのコマンド 問13
GNUとUnixのコマンド/正規表現を使用したテキストファイルの検索基本正規表現(BRE)における次のメタ文字の説明として、誤っているものはどれか。
当サイトのオリジナル問題(LinuCレベル1の出題範囲「GNUとUnixのコマンド」に対応。実際の試験問題ではありません)
- A.は任意の1文字にマッチする
- B[abc]はa,b,cのいずれか1文字にマッチする
- C[^abc]はa,b,cのいずれかの文字にマッチする
- D*は直前の文字の0回以上の繰り返しにマッチする
正解:C
解説
基本正規表現(BRE)では、.は任意の1文字、*は直前の要素の0回以上の繰り返し、[abc]はa・b・cのいずれか1文字にマッチする文字クラスです。[^abc]は文字クラスの先頭に^を置くことで意味が反転し、a・b・c以外の任意の1文字にマッチします。
選択肢ごとの解説
- A誤り(正しい記述)。.は任意の1文字にマッチします。
- B誤り(正しい記述)。[abc]はa,b,cのいずれか1文字にマッチする文字クラスです。
- C正しい(誤っている記述)。[^abc]は先頭の^により否定の文字クラスになり、a,b,c以外の1文字にマッチします。a,b,cのいずれかにマッチする、という説明は誤りです。
- D誤り(正しい記述)。*は直前の文字の0回以上の繰り返しにマッチします。