の特殊文字の完全なリストを知っている人はいsed
ますか?
それは私の質問を次のように変換するだけなので、次のような答えを出さないでくださいgrep
: の特殊文字の完全なリストを知っている人はいgrep
ますか?
場合によります。厳密に言えば、標準に準拠した sed は、標準で次のように規定されている基本正規表現のみを使用する必要があります。
BRE 特殊文字と、それらが特別な意味を持つコンテキストは次のとおりです。
.[\
ピリオド、左角括弧、およびバックスラッシュは、括弧式で使用される場合を除き、特別なものでなければなりません (RE ブラケット式を参照してください)。バックスラッシュが前になく、ブラケット式の一部ではない「[」を含む式は、未定義の結果を生成します。
*
アスタリスクは、BRE 全体の最初の文字として (もしあれば最初の '^' の後)、または部分式の最初の文字として (最初の '^' の後、どれか); 複数の文字に一致する BRE を参照してください
^
サーカムフレックスは、アンカーとして使用される場合 (BRE Expression Anchoring を参照)、またはブラケット式の最初の文字として使用される場合 (RE ブラケット式を参照) は特別です。
$
ドル記号は、アンカーとして使用する場合は特別です。
したがって、完全なリストは です.[\*^$
が、コンテキストが重要です。また、多くの sed は拡張正規表現 (ERE) を使用するオプションを提供します。これにより、リストが拡張され、文字が特殊なコンテキストが変更されます。たとえば、ERE なしのグループ化は\(
andを使用して形成されます\)
が、ERE(
ありの and)
自体は特別であり、文字どおりに一致させるにはエスケープする必要があります。
これは、通常の文字とは異なる方法で sed が応答する文字 [\^$.|?*+() の完全なリストだと思います。