...
正规表达式匹配的问题
本帖最后由 ConRst 于 2013-03-04 16:19:37 编辑 字符串是这样的
&AAA=111&BBB=222&CCC=333...
现在想用正规匹配得到AAA和111这样的值
$RegStr='/&(.*)=(.*)/'; //请问这个表达式是不是有问题 我这里的输出结果不对
if(preg_match($RegStr,$urladd,$mat))
{
print_r($mat); //这里如何输出 AAA和 111 这样的两个变量的值
}
上面代码输出有问题,贴出来是让大家看明白,请大家帮忙
------解决方案--------------------$RegStr='/&(.*?)=([^&]+)/';
------解决方案--------------------
$str='&AAA=111&BBB=222&CCC=333';
preg_match_all('/&(\w+)=(\w+)/i',$str,$result);
var_dump($result);
array(3) {
[0]=>
array(3) {
[0]=>
string(8) "&AAA=111"
[1]=>
string(8) "&BBB=222"
[2]=>
string(8) "&CCC=333"
}
[1]=>
array(3) {
[0]=>
string(3) "AAA"
[1]=>
string(3) "BBB"
[2]=>
string(3) "CCC"
}
[2]=>
array(3) {
[0]=>
string(3) "111"
[1]=>
string(3) "222"
[2]=>
string(3) "333"
}
}
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论