Javascript 用于西里尔语和国际字符的正则表达式
下面列出的这个正则表达式几乎满足了我的所有要求,只缺少一个: 除特殊字符外,它必须至少有3个必需的字母数字字符 以下是我的验收标准:Javascript 用于西里尔语和国际字符的正则表达式,javascript,regex,Javascript,Regex,下面列出的这个正则表达式几乎满足了我的所有要求,只缺少一个: 除特殊字符外,它必须至少有3个必需的字母数字字符 以下是我的验收标准: 至少3个字符(包括字母和数字,不包括 (包括特殊字符) 它必须至少有3个字母数字字符,不包括 特殊角色-尚未工作 独立单词中的所有字母表不能相同。然而,如果 他们是世界的一部分,我们将允许他们这样做。例如。 不允许AAA,但允许Haaadoop 一个单词中允许连续字母小于或等于3。 例如,允许使用Haaadoop,但不允许使用Haaadoop 不允许使用三个或更多
AAA
,但允许Haaadoop
Haaadoop
,但不允许使用Haaadoop
AA
,但不允许使用AAA
111
或111111
A-B
,A--B
或A-&B
是不允许的#&()35;+[]:;',/-“*
Haaadoop 123
A-B 123
123.ãåæëìî
crmkССССПτ123
123аöССа
- <代码>аС123а
123 Haaadoop
123 A-B
123
111 asdasdbhb
1111 asdwebqfbwejbf
123
1111111 adfsdfdsf
haaadoop 123
A--B 123
A-&B123
AAA
abcd
123
123 Haaaaadoop
123a--B
2A
x
修饰符
您的标准几乎是按字面意思写的,可表示为以下内容(注释中的标准参考):
正则表达式不包括原始表达式中出现的“邮局”限制,因为它在条件列表中丢失,但可以很容易地添加
演示:
以及JavaScript版本:
^(?=(?:.*[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9]){3,})(?!.*\b([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\1+\b)(?!.*([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\2{3,})(?![a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ]{3,}$)(?=([0-9])\3+$|(?!\d+$))(?!.*[\ *"(:,\/.\\;&)\[\]_+#'-]{2,})[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9\ *"(:,\/.\\;&)\[\]_+#'-]{3,40}$
演示:请参阅和。所有字符都是“国际字符”。似乎您需要看到“除特殊字符外,它必须至少有3个必需的字母数字字符”-在
^
之后添加正向前瞻:(?=(?:[^alphanumeric]*[alphanumeric]){3}
其中需要将字母数字替换为您拥有的alnum模式(包括“国际”角色)。当你说某件事不起作用时,我们不知道是什么和怎么回事。发生了什么事,你尝试了什么?更新问题。接受标准不正确。因为它是字母数字字段,所以它应该接受数字和字母。所有数字可以相同,但应该是字母数字和连续字母一个单词中允许s大于或等于3,但不能超过3。例如,允许Haaadoop,但不允许Haaadoop。
^
(?=(?:.*[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9]){3,}) # 1 & 2
(?!.*\b([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\1+\b) # 3
(?!.* ([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\2{3,}) # 4
(?! [a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ]{3,}$) # 5
(?=([0-9])\3+$|(?!\d+$)) # 6 + implied by the test data "no number
# alone on a string unless all digits are
# the same" rule
(?!.*[\ *"(:,\/.\\;&)\[\]_+#'-]{2,}) # 7
[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9\ *"(:,\/.\\;&)\[\]_+#'-]{3,40}$
^(?=(?:.*[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9]){3,})(?!.*\b([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\1+\b)(?!.*([a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ])\2{3,})(?![a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ]{3,}$)(?=([0-9])\3+$|(?!\d+$))(?!.*[\ *"(:,\/.\\;&)\[\]_+#'-]{2,})[a-zA-ZÀ-ÖØ-ߟà-çа-яА-ЯЁёè-ÿ0-9\ *"(:,\/.\\;&)\[\]_+#'-]{3,40}$