このコード ^[a-zA-Z]+$ があり、その目的は文字だけを分離することであり、+$ を追加した後にのみ機能し、A33 のようなものも計算します。私の質問は+ $の役割/意味は何ですか?
ベストアンサー1
中拡張正規表現(たとえば、シェルでサポートされている型bash
)は、+
前の式(それ[a-zA-Z]
自体が与えられたセットの単一文字と一致する)の修飾子であり、式は少なくとも1回一致する必要がありますが、複数回一致することもできます。は「行末アンカー」です。つまり、$
範囲または で空でない文字列の後に行末以外に他の内容を含めることはできません。a-z
A-Z
同様に^
(式で使用されているように)は線の先頭の基準点です。
この式は行の終わりにビットを許可しないA33
ため、文字列と一致しません。33
そうでない場合は、式全体が開始部分文字列$
と一致するため、式は文字列と一致します。A
いいえ+
(しかしあります$
)。そうです。いいえAAA
式には単一の文字しか許可されていないため、文字列と一致します。