gpt4 book ai didi

javascript - 用于验证字母和数字的正则表达式无法按预期工作

转载 作者:行者123 更新时间:2023-11-30 07:41:49 24 4
gpt4 key购买 nike

我正在尝试创建一个包含 17 个字符的正则表达式,必须包含强制数字和字母,并且不得包含字母 I、O、Q、Ñ。目前我有:

^(([a-h]|[j-n]|p|[r-z]|[A-H]|[J-N]|P|[R-Z]|[0-9]){17})$

但如果我只输入数字或字母,正则表达式会验证它是正确的。

最佳答案

通常在这种情况下您要使用 positive lookahead为了断言输入满足附加条件。由于这里有两个条件(必须至少包含一个数字,必须至少包含一个字母),这转化为两个不同的前瞻。

加上额外的空格和“注释”以提高可读性,正则表达式应该如下所示:

^
(?=.*[a-hj-npr-zA-HJ-NPR-Z].*) // assert the input contains at least one letter
(?=.*[0-9].*) // assert the input contains at least one digit
[a-hj-npr-zA-HJ-NPR-Z0-9]{17} // existing condition (17 allowed chars exactly)
$

关于javascript - 用于验证字母和数字的正则表达式无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15410980/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com