
正则表达式中匹配问号的用途:可选项
在正则表达式中,问号 (?) 表示一个可选项,也就是说,匹配项可以出现,也可以不出现。例如:
^0?1[3|4|5|8][0-9]\d{8}$这个正则表达式验证手机号码。前面加上的 0? 表示开头可以有一个 0,也可以没有。
为什么不能直接使用 var reg = /^13|4|5|8d{8}$/?
如果直接使用这个正则表达式,则手机号码必须以 1 开头,并且不能有 0。这是因为正则表达式从左到右匹配,第一个字符必须满足 1,并且没有 0 可以匹配。
历史原因
正则表达式中使用 0? 还与过去有关。以前拨打长途手机号码时,需要在号码前加一个 0。虽然现在不需要这个 0,但为了兼容性,正则表达式中仍然可以保留 0?。
以上就是正则表达式中问号 (?) 的作用:为什么匹配手机号码时要使用 0? 而不是直接使用 1?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号