gpt4 book ai didi

regex - 正则表达式选择10位数字的电话号码,但如果字符串包含10位以上的数字,则无效?

转载 作者:行者123 更新时间:2023-12-02 00:51:13 28 4
gpt4 key购买 nike

到目前为止,我的(\+\d{{0-9}}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}命中了我所有的测试用例,除了一个用例(数字6应该无效)。

=> 1 VALID   - 2437284712
=> 2 VALID - (723)728-2020
=> 3 VALID - 243 728 4712
=> 4 VALID - (900)8593019

=> 5 INVALID - 24372847
=> 6 VALID - (723)728-20201
=> 7 INVALID - 243 78 4712
=> 8 INVALID - (800)CITYLINE

enter image description here
资料来源:debuggex.com

当正则表达式包含11位数字时,如何使其对于测试用例6无效?

最佳答案

您可以简单地添加开始和结束 anchor 并解决问题,但是我怀疑您的表达可能是您想要的,因为它将传递+0{{0-9}} 2437284712:

^(\+\d{{0-9}}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$

Demo

关于regex - 正则表达式选择10位数字的电话号码,但如果字符串包含10位以上的数字,则无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57436925/

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