拡張REGEXとして(^| )ABC( |$)はどういう意味ですか?

拡張REGEXとして(^| )ABC( |$)はどういう意味ですか?

ここに来て注文を見ました。grep -E '(^| )ABC( |$)' ファイル1 ^ と $ の文字を始まりと終わりのマークとして知っていますが、ここでは角かっこが最初または最後にないため、正規表現を解釈する方法は混乱しています。 ^は時々集合文字を否定するために使用されますが、私は単に[^....]のような表現でこの使い方を見たことがあるだけです。

誰かがこの正規表現が何を意味するのかを段階的に説明できますか?

答え1

これは、grep文字列が行の先頭からのみ検索される必要があることを意味します。ABCまたはスペースの後には、文字列は別のスペースまたは行末で終わる必要があります。

つまり、誰かが完全な文字列を形成するために検索をしたいのです。性格。しかし、この正規表現は問題がたくさんあります。つまり、前後に他の文字がたくさんある可能性があるということです。言葉(少なくとも自然言語では)、(つまり)、、、、、、など.;:,...

-wしたがって、optionを使用するgrepか、bounds:\bまたは\</を使用することをお勧めします\>

関連情報