Javascript 正则表达式,用于检查字符串是否至少包含拉丁字母,此外还可以包含任意顺序的数字

Javascript 正则表达式,用于检查字符串是否至少包含拉丁字母,此外还可以包含任意顺序的数字,javascript,regex,Javascript,Regex,此正则表达式要求字符串结尾包含数字,但也可以使用“aabbccd1bbb3bb”、“vvvddhh3”、“12kkk”等字符串 (?=(?:.*[a-z]){1,24})(?:.*\d){0,22} “要求”如“字符串应至少包含…”用正则表达式语言编写为起始前瞻断言,例如 ^(?=.*[a-z]) 读“字符串的开头,后跟whatever,然后是一个拉丁字母”。正则表达式的主体可以是[a-z0-9],因为您可以接受字母和数字的任意顺序 总而言之 re=/^(?=.[a-z])[a-z0-9]

此正则表达式要求字符串结尾包含数字,但也可以使用“aabbccd1bbb3bb”、“vvvddhh3”、“12kkk”等字符串

(?=(?:.*[a-z]){1,24})(?:.*\d){0,22}
“要求”如“字符串应至少包含…”用正则表达式语言编写为起始前瞻断言,例如

^(?=.*[a-z])
读“字符串的开头,后跟whatever,然后是一个拉丁字母”。正则表达式的主体可以是
[a-z0-9]
,因为您可以接受字母和数字的任意顺序

总而言之

re=/^(?=.[a-z])[a-z0-9]+$/
测试=[
“aaa”,
“aaa33bb”,
'2019',
'#*$)',
'',
]
对于(t试验)
console.log(t,re.test(t))
像“字符串应至少包含…”这样的“要求”是用正则表达式语言编写的,例如

^(?=.*[a-z])
读“字符串的开头,后跟whatever,然后是一个拉丁字母”。正则表达式的主体可以是
[a-z0-9]
,因为您可以接受字母和数字的任意顺序

总而言之

re=/^(?=.[a-z])[a-z0-9]+$/
测试=[
“aaa”,
“aaa33bb”,
'2019',
'#*$)',
'',
]
对于(t试验)

console.log(t,re.test(t))
您可以在不创建复杂正则表达式模式的情况下执行此操作。创建两个小模式以删除不希望检查的字符。例如,代码段包含一个正则表达式
[^a-z]+
,用于匹配所有非小写字母字符。然后,我们使用此模式从字符串中删除这些字符,然后我们可以计算剩余的字符数。这告诉我们,
aabbccd1bbb3bb
有12个字母字符。可以为数字
\D+
创建相同的值。然后,您可以在下面添加验证逻辑,以确保它满足其他约束条件(例如,1您可以在不创建复杂正则表达式模式的情况下执行此操作。创建两个小模式以删除不希望检查的字符。例如,代码段包含正则表达式
[^a-z]+
匹配所有非小写字母字符。然后我们使用此模式从字符串中删除这些字符,然后我们可以计算剩余的字符数。这告诉我们
aabbccd1bbb3bb
有12个字母字符。可以为数字
\D+
创建相同的字母字符。然后可以在下面添加验证逻辑w以确保它满足其他约束条件(例如,将
{0,22}
更改为
{1,22}
以至少需要1位数字。更简单的是,将正则表达式拆分并创建一个独立检查所有内容的函数。替换
[^a-z]
不含任何内容,然后计数。将
\D
替换为不含任何内容,然后计数。确保它与
\D$
匹配。同样,它也不清楚;您显示的哪些字符串有效,哪些无效?您能更明确地定义规则吗?最小值、最大值、允许/不允许的字符数、允许的大写变量数?更改
{0,22}
{1,22}
至少需要1位数字。更简单的是,将正则表达式拆分并创建一个独立检查所有内容的函数。替换
[^a-z]
不含任何内容,然后计数。将
\D
替换为不含任何内容,然后计数。确保它与
\D$
匹配。同样,它也不清楚;您显示的哪些字符串有效,哪些无效?您能更明确地定义规则吗?最小值、最大值、允许/不允许的字符数、允许的大写变量数?