レッスン4:特定の文字を除外する

場合によっては、マッチさせたくない特定の文字があるかもしれません。たとえば、市外局番が650ではない電話番号だけをマッチさせたい場合などです。

これを表現するために、角括弧^ハット)を使用して、特定の文字を除外する同様の式を使用します。たとえば、パターン[^abc]は、文字a、b、またはc以外の任意の単一文字にマッチします。

以下の文字列を使用して、生きている動物(hog、dog、bogではない)のみにマッチするパターンを記述してみてください。このタイプのほとんどのパターンは、前回のレッスンで説明した手法を使用しても記述できることに注意してください。これらは実際には同じコインの両面です。両方の選択肢を持つことで、独自のパターンを作成する際に、どちらがより書きやすく理解しやすいかを判断できます。

演習4:文字を除外する
タスク テキスト  
マッチ hog To be completed
マッチ dog To be completed
スキップ bog To be completed
解決策

'og'で終わるが'bog'ではない行にマッチする最も簡単な解決策は、[^b]ogという式です。あるいは、前のレッスンで学んだことを使用して、[hd]ogを使用して'hog'と'dog'にマッチさせ、'bog'にはマッチさせないようにすることもできます。これはマッチできる文字列を制限するため、わずかに制約の強い表現であることに注意してください。

上記のタスクを解決して次の問題に進むか、解決策を読んでください。