我正在研究电话号码正则表达式,这是我到目前为止所拥有的:^[0-9~+ ]{8,20}$
它允许 0 到 9 之间的数字,并且还允许“+”和空格。范围必须在 8 到 20 之间。这样效果很好。
我想要的进一步是只有 8 到 20 位数字,其中“+”和空格与它们分开。
类似这样的:^[+]\d{8,20}$
建议?
最佳答案
怎么样:
^(?:[+ ]*\d){8,20}$
这将匹配前面有或没有 +
或空格的 8 到 20 位数字。
如果+
只能出现在开头:
^[+]?(?:[ ]*\d){8,20}$
关于java - 正则表达式定义两个允许的字符/数字列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29565386/