
だからRegEx +表記が何であるかがわかります(前の文字を1回以上探します)。使い方がわかりそうですね…
echo "This is a good sentence." | awk '/go+d/ {print $0}'
(良いものを見つけて、良い、良い)
しかし、私はこの重複を探すべき実用的で客観的な理由を見つけるのに苦労しています。他の人に説明できるように、目的に合ったコンテキストを提供するシーンが必要です。
あなたの助けとあなたの知識と経験に頼ることができるようにしてくれてありがとう。
答え1
個々のキャラクターについて考えるとき、+
キャラクタークラスを使用すると、これがより役に立つことがわかります。
- スペース:
\s+
- 数値以外の文字:
[^0-9]+
- 一言:
\w+
- 空でない文字列:
.+
- など。
これにより、実際のケースを簡単に考えることができます。たぶんインデントされたテキストを含む行を探したいかもしれません^\s+\S
。または、空でないすべての行を検索したい場合があります^.+$
。必要に応じて、より多くを思い出すことができます。 ;)
答え2
*
以下は、ダメージを受けずに使用する実際の例+
です(主にOPはワイルドカードの代わりに正規表現を使用することになることに気づかなかったため)。このコマンドがすべてのパッケージを削除するのはなぜですか?
apt-get install
合計のパラメータはapt-get remove
次のとおりです。シェルワイルドカードの代わりに正規表現拡張;後には任意の数の数字が続くことをwine*
意味し、これはパッケージ名の任意の部分と一致する可能性があるため、名前に部分文字列を含むすべてのパッケージを意味します。win
e
win
OP が実行され、sudo apt-get remove wine*
システムにインストールされたパッケージの大部分が削除されました。一方、その中に含まれているパッケージはwine+
削除されます。wine