3

文字列に少なくとも 3 つの異なる文字 (任意のタイプ) が含まれていることを確認する正規表現が必要です。

たとえば、aqaqaq は 2 つの異なる文字のみで構成されているため無効です。aqwaqa または aq3aqa または aq!aqa が有効です。

それは正規表現で可能ですか?

言語: Javascript / PHP

ありがとう

4

1 に答える 1

4

負の先読みを含むこの正規表現を使用できます。

/(.).*(?!\1)(.).*(?!\1)(?!\2)(.)/

例:

> regex = /(.).*(?!\1)(.).*(?!\1)(?!\2)(.)/
> regex.exec('abab!aba')
["abab!ab", "a", "!", "b"]
> regex.exec('abababa')
null
于 2012-05-04T08:08:53.700 に答える