2017-12-04 4 views
1

は、だからここに私の問題は、私はそう(単なる例)のようなファイルを生成するスクリプトを持っています:grepを1つの区切りとファイル名の正規表現ではなく2

animal

animal.dog

animal.dog.7

本質的にこれはファイル内のツリー構造であり、それぞれが異なる情報を含んでいます。

私はanimal.dogをつかむしようとしているが、私の正規表現.*\..*$は私だけanimal.dogを配置したい場所を

animal.dog.7animal.dog

の両方をつかむことを望んでいます。

ご協力いただければ幸いです!

答えて

2

あなたはgrep -E正規表現パターンで、この否定文字クラスを使用することができます。

^[^.]+\.[^.]+$ 

これはanimal.dogと一致しますが、一致しませんanimal.dog.7

正規表現の分裂:

  • ^:開始
  • [^.]+:DOT
  • \.ないマッチ1+文字リテラルDOTに
  • [^.]+を一致:DOT
  • $ないマッチ1+文字:エンドを
+1

どうもありがとうございました! (私はできるだけ早く答えを記します) – Hans

関連する問題