正则表达式中的()[]在函数preg_match()中得到的结果数组是怎样的
1个回答
展开全部
[
]不是子模式,不会在结果集里面列出。
(
)中的东西,如果不是(?:
),就会出现在结果集中。
在结果数组中,0索引指向整个表达式匹配结果,往后1、2、3、4分别代表第1、2、3、4个子模式的匹配结果。结果中子模式顺序按开始括号的前后排序。
比如你写
$str='hello12345@xxx.abcdef';
$pattern='/(.*?)([0-9]+)/';
preg_match($pattern,$str,$match);
你会得到
array(
0
=>
'hello12345',
1
=>
'hello',
2
=>
'12345'
)
]不是子模式,不会在结果集里面列出。
(
)中的东西,如果不是(?:
),就会出现在结果集中。
在结果数组中,0索引指向整个表达式匹配结果,往后1、2、3、4分别代表第1、2、3、4个子模式的匹配结果。结果中子模式顺序按开始括号的前后排序。
比如你写
$str='hello12345@xxx.abcdef';
$pattern='/(.*?)([0-9]+)/';
preg_match($pattern,$str,$match);
你会得到
array(
0
=>
'hello12345',
1
=>
'hello',
2
=>
'12345'
)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询