首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正则表达式有什么问题?

正则表达式有什么问题?
EN

Stack Overflow用户
提问于 2014-10-08 21:27:50
回答 2查看 45关注 0票数 0

有什么问题:

代码语言:javascript
复制
$pattern = '/9[0-5[7-9]]{1}[\\d]{10})|([0-2]\\d{11}/';
$subject = '971093342689';

正在尝试签入php

代码语言:javascript
复制
preg_match($pattern, $subject)

收到错误:

代码语言:javascript
复制
preg_match(): Compilation failed: unmatched parentheses at offset 22 
EN

回答 2

Stack Overflow用户

发布于 2014-10-08 21:35:28

这两个括号不是闭合的:

代码语言:javascript
复制
$pattern = '/9[0-5[7-9]]{1}[\\d]{10})|([0-2]\\d{11}/';

                                    ^^^^

如果这是你需要的标志,你就必须避开它。否则,您需要在regexp中使用一个左括号和一个闭括号。

票数 1
EN

Stack Overflow用户

发布于 2014-10-08 21:46:06

正如其他人所说,括号不是闭合的。我的猜测是,您应该删除它们,因为它们后面没有量词(*,+,?或者{}),并且您没有$matches参数,所以您对捕获组不感兴趣。

另外,我认为[0-57-9]并不是你想的那样:这意味着:0到5,7到9或。您可能需要0-57-9,这意味着:字符0到5或7到9中的任何一个

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26258121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档