私は正規表現を構築しようとしています。たとえば、A:)B
は許可されず、A:B
が許可されます。代替位置でのみ特殊文字を許可する正規表現パターン
A:B:C
A,[email protected]*(C((D
は許可されていません。
唯一の要件は、特殊文字とそれに続く数字/文字が許可されていても、代替位置に特殊文字を許可することです。
2つの特殊文字は、同じであっても異なっていても一緒に使用できません。また、2つの連続した英数字も許可する必要があります。
私は正規表現を構築しようとしています。たとえば、A:)B
は許可されず、A:B
が許可されます。代替位置でのみ特殊文字を許可する正規表現パターン
A:B:C
A,[email protected]*(C((D
は許可されていません。
唯一の要件は、特殊文字とそれに続く数字/文字が許可されていても、代替位置に特殊文字を許可することです。
2つの特殊文字は、同じであっても異なっていても一緒に使用できません。また、2つの連続した英数字も許可する必要があります。
これはあなたのケースのために働くようだ:
[0-9A-Za-z]+([~`[email protected]#$%^&*()_+\-=;':"][0-9A-Za-z]+)+
私はregexr上のいくつかのケースをテストした:
PS:私は_
として\w
と\W
ないですが\w
の一部であると解釈されます。この場合、私は_
が特殊文字になると仮定しています。
希望します。
これはA @#Bでは動作しますが、A#B @#Cでは動作しません – user3709712
これは 'A#B @#C'と一致しません。 – anacron
これは私のためにうまくいくようです:http://regexr.com/3g1h5 – anacron
ここで何か試してみることができます。 – Mike
テストのためにhttp://regexr.com/この質問に答える必要があります。特殊文字と "通常の"文字(大文字のASCII文字のみ?)を定義する必要があります。 ':A)B $'は許されるのだろうか?その他、マッチングのルールはまだ不明です。 –
他のものはすべて今日の2つの異なる特殊文字とは別に許可されています – user3709712