次のパラメータを使用して、txtファイルで特定の行を検索するために、この拡張式を理解しようとしています。
- 7桁の数字を含む行、
- 前後を数字以外の文字で囲み、
- 3桁目と4桁目の間に1つ以上のダッシュまたはアンダースコアがあります。
これらは一致する必要があります:
x555-1212x
x555__1212x
x555-_-1212x
しかし、これらは一致しません:
x999555-1212x
x555-1212999x x999555-1212999x
555-121x
x55-1212
5551212
これが私が試したもので、チェックスクリプトによると必要な7行のうち5行が表示されます
egrep '[^0-9]+[[:digit:]]{3}[-_]+[[:digit:]]{4}[^0-9]+' foo.txt
これでどこが間違っているのかわかりません...制限が厳しすぎて、Tabなどの特定の空白文字を削除しているかどうか。誰かアイデアはありますか?