c# regex西班牙手机
本文关键字:手机 西班牙 regex | 更新日期: 2023-09-27 17:54:08
这些规则的有效正则表达式是什么:
34 6xx xxx xxx
34 7yx xxx xxx
(note y cannot be 0 (zero))
这个能行吗?
34(([6][0-9]{8}$)|([7][1-9]{1}[0-9]{7}$))
你的正则表达式应该工作,假设你不希望它处理空格。
您可以通过从中提取[0-9]{7}
的公共后缀来进一步优化您的regex:
^34(?:6[0-9]|7[1-9])[0-9]{7}$
如果您想要考虑可选的空格,请在您希望允许插入空格字符的地方插入's?
到您的正则表达式中:
^34's?(?:6[0-9]|7[1-9])[0-9]'s?[0-9]{3}'s?[0-9]{3}$
如果需要处理带有空格的特定格式,可以使用
^34 ?(?:6[0-9]{2}|7[1-9][0-9])(?: ?[0-9]{3}){2}$
参见RegexStorm demo
正则表达式解释:
-
^
-字符串 起始 -
34 ?
- 34后面跟一个可选的空格 -
(?:6[0-9]{2}|7[1-9][0-9])
-一组2个选项:6
可以后跟任意2位数字,而7只能后跟非0和多一位数字 -
(?: ?[0-9]{3}){2}
- 2组3位数字,可选择用空格分隔 -
$
-字符串结束。