0

この正規表現の意味

[^ 0-9 ^ AZ]

??

数字と一致せず、大文字と一致しませんか?

4

3 に答える 3

1

正しい正規表現:[^0-9A-Z]+2番目^は必要ありませ+ん。あなたがいなければ、このタイプの1つの文字に一致するだけです。

0-9これはと同じであることに注意してください\d。これに最適な正規表現は次のようになります。[^A-Z\d]+

于 2012-05-16T18:16:07.147 に答える
1

キャレット^が括弧で囲まれたグループの先頭にある場合、「次の項目以外を検索する」ことを意味します。ただし、それ以外の場所に配置されている場合は、「他のアイテムと一緒にキャレットを見つける」ことを意味します。あなたのものには両方があります。つまり、「次の項目 (キャレット記号を含む) 以外のものを見つける」という意味です。

つまり[^A-Z0-9]、「大文字または数字以外の任意の文字を見つける」という意味です

あなたの正規表現は[^0-9^A-Z]、「大文字、数字、またはキャレット記号以外の文字を見つける」という意味です。

他の人が指摘しているように、おそらく最初のバージョンを意味していたのでしょうが、2 つの違いに注意することが重要だと思いました。

于 2012-05-16T18:22:49.757 に答える
0

現状では、数字、大文字、サーカムフレックスを除く任意の 1 文字に一致します。

先頭のサーカムフレックス ( ^) は、文字セットを否定します。左角かっこの直後に続くサーカムフレックスは、文字セット自体の一部として解釈されます。の正規表現は[^^]、曲折アクセント記号を除くすべての文字に一致します。

于 2012-05-16T18:23:58.663 に答える