正则表达式可能包含8或9个数字 - 怎么办?

时间:2013-02-21 19:24:44

标签: regex digits

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

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

输出:(31) 8876-3234 VALID

圣保罗州有9位手机:

输出 SP (31) 98876-3234

目前的正则表达式需要调整以接受有效的任何提示,我应该在其中进行哪些更改?

1 个答案:

答案 0 :(得分:4)

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

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

虽然你的正则表达式似乎很好,因为它有一个可选的9在4位之前匹配。但如果有可能除了9之外还有其他任何东西,那么你可以使用这个正则表达式。