2017-05-25 8 views
-5

私は正規表現を構築しようとしています。たとえば、A:)Bは許可されず、A:Bが許可されます。代替位置でのみ特殊文字を許可する正規表現パターン

A:B:CA,[email protected]*(C((Dは許可されていません。

唯一の要件は、特殊文字とそれに続く数字/文字が許可されていても、代替位置に特殊文字を許可することです。

2つの特殊文字は、同じであっても異なっていても一緒に使用できません。また、2つの連続した英数字も許可する必要があります。

+0

ここで何か試してみることができます。 – Mike

+0

テストのためにhttp://regexr.com/この質問に答える必要があります。特殊文字と "通常の"文字(大文字のASCII文字のみ?)を定義する必要があります。 ':A)B $'は許されるのだろうか?その他、マッチングのルールはまだ不明です。 –

+0

他のものはすべて今日の2つの異なる特殊文字とは別に許可されています – user3709712

答えて

0

これはあなたのケースのために働くようだ:

[0-9A-Za-z]+([~`[email protected]#$%^&*()_+\-=;':"][0-9A-Za-z]+)+ 

私はregexr上のいくつかのケースをテストした:

PS:私は_として\w\Wないですが\wの一部であると解釈されます。この場合、私は_が特殊文字になると仮定しています。


希望します。

+0

これはA @#Bでは動作しますが、A#B @#Cでは動作しません – user3709712

+0

これは 'A#B @#C'と一致しません。 – anacron

+0

これは私のためにうまくいくようです:http://regexr.com/3g1h5 – anacron

関連する問題