0

我使用这个正则表达式来验证巴西手机:

/^(\([0-9]{2}\))\s([9]{1})?([0-9]{4})-([0-9]{4})$/

输出:(31) 8876-3234有效

圣保罗州有 9 位数的手机:

输出SP(31) 98876-3234

当前的正则表达式需要调整以接受它也是有效的,关于我应该改变什么的任何提示?

4

1 回答 1

4

您可以使用{m,n}量词创建一个范围:

/^(\([0-9]{2}\))\s([0-9]{4,5})-([0-9]{4})$/

尽管您的正则表达式似乎很好,因为它9在 4 位数字之前可以选择匹配。但是,如果有任何可能存在其他任何东西9,那么您可以使用这个正则表达式。

于 2013-02-21T19:26:04.107 回答