正则问题 有数据a1:内容1,a2:内容2,a3:内容3,a4:内容4,a5:内容5,a6:内容6,能否根据指定的a1取得内容1a2的话就取内容2............. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 $str = "a1:内容1,a2:内容2,a3:内容3,a4:内容4,a5:内容5,a6:内容6,";$serach = "a1";preg_match(sprintf("/%s:([^:,]+)/i")"/",$serach),$str,$matches);var_dump($matches[1]);可以,但是要确定a1内容不包含一些特殊字符,否则要转义.比如说 " ' [ ] ( )等正则的特殊字符.不过建议还是用字符串操作来做更好些. 你这是多次取,不应该用正则,不然每次取相关内容都要遍历一次字符串。$str = 'a1:内容1,a2:内容2,a3:内容3,a4:内容4,a5:内容5,a6:内容6,';$data = explode(',',$str);foreach($data as $k=>$v){ list($k2,$v2) = explode(':',$v); $dataArray[$k2] = $v2;}echo $dataArray['a6'];//内容6echo $dataArray['a2'];//内容2 昨晚加班,写个遍历文件夹的,脑袋短路了,写了N久,再散个分 HTML下拉选择如何以POST方法传递多个变量值给PHP? PHP注册信息提示对话框 一个关于用php输出文件的问题(急) 高手帮忙解决!!!!!编码的问题 为什么我接收不到变量?(新手问题) 麻烦列位,站内搜索如何做? 如何搭建立php运行环境 请教mysql问题!! 服务器端如何向客户端发送数据? 哪位老大提供一个“服务器推”的代码? 如何将含日期的字符串转变成日期格式
preg_match(sprintf("/%s:([^:,]+)/i")"/",$serach),$str,$matches);
var_dump($matches[1]);
可以,但是要确定a1内容不包含一些特殊字符,否则要转义.
比如说 " ' [ ] ( )等正则的特殊字符.不过建议还是用字符串操作来做更好些.
foreach($data as $k=>$v)
{
list($k2,$v2) = explode(':',$v);
$dataArray[$k2] = $v2;
}
echo $dataArray['a6'];//内容6
echo $dataArray['a2'];//内容2