2016-03-27 12 views
1

私は正規表現の初心者です。2単純な正規表現

最初の文字:任意の文字を使用できますが、<および/または>が文字列内にある場合、これは許可されません。

第2のもの:上記と同じですが、長さゼロの文字列または空文字列も使用できません。

私が今までに持っていたのは、第1の場合は[^<>]、第2の場合は^\S+$かもしれませんが、私の要件を正しく満たすとは思わないのです。ヘルプは高く評価しました。

:任意の文字を使用することができる

+1

http://regexpal.comは、このための非常に便利なウェブサイトです。 – John

+1

最初のものは、 '^ [^ <>] * $'を2回目に閉じたときに '*'を '+'に変更しました。 – HamZa

+0

ジョン - そのリンクに感謝します。 – user3173098

答えて

2

Iは、ASP.NETRegularExpressionValidator制御でこれらを使用する)が、<及び/又は>任意の場所に存在する場合文字列、これは許可されていません。

^[^<>]*$ 

this demoを参照してください。 [^...]は、文字以外の文字に一致するnegated character classです。 *は0文字以上と一致します(したがって、空の一致が許可されます)。 ^は、文字列の先頭に位置をアサートし、最後に$ - をアサートします。

上記と同じですが、長さゼロの文字列または空白の文字列も使用できません。

^(?!\s+$)[^<>]+$ 

another demo

(?!\s+$)negative lookahead\s+マッチ1+空白と$は、文字列の末尾位置をアサート)を参照してくださいここで空白だけで文字列に一致防ぎます。 +量指定子は1文字以上と一致します(空の照合はできません)。

+0

優れています。本当にありがとう。 – user3173098

+0

2番目のものを '^ [^ <> \ s] + $'に変更してみませんか? –

+0

わかりません、それは同じことでしょうか? – user3173098