web-dev-qa-db-ja.com

正規表現 - 特定の文字を含まない

文中のどこかに<または>がない場合に一致させるには、正規表現が必要です。

<または>が文字列に含まれている場合は、falseを返す必要があります。

私はこれで部分的に成功しましたが、私の<>が始めか終わりにある場合だけです。

(?!<|>).*$

違いがあれば、.Netを使用しています。

助けてくれてありがとう。

質問に追加:

テキストに<test>のようなタグが含まれている場合にのみ、falseを返すように以下の正規表現を変更するにはどうすればよいでしょうか。

202
SetiSeeker
^[^<>]+$

文字クラスのキャレット([^)は何にでも一致することを意味します。つまり、これは文字列の先頭、次に<>以外の1つ以上の文字列、そして文字列の末尾を意味します。

334
Ned Batchelder

どうぞ:

^[^<>]*$

これは<>がない文字列をテストします。

もしあなたが<>を持っているかもしれないが他の何かも持っていなければならない文字列をテストしたいなら、あなたはただ使うべきです

[^<>] (or ^.*[^<>].*$)

[<>]<または>のいずれかを意味し、[^<>]<または>のいずれでもないことを意味します。

そしてもちろん、必須の リンク

43
Alin Purcaru