就正则表达而言,我需要学习很多东西。
我有一个像这样的关联数组:
array(
"label"=>"Special",
"title"=>"Category",
"onclick"=>"dosomething()",
"options"=>array(
"one"=>"something"
)
)
我正在尝试在数组上使用preg_match_all
,如下所示:
$match="on*";
foreach ($value as $param=>$text) {
if (preg_match_all("/".$match."/",$param,$matches)) {
$return.=" ".$param."='".$text."'";
}
}
return $return;
我的问题是$return
最终看起来像这样:
options='Array' onclick='dosomething()'
显然,我的正则表达式是错误的。 on*
还不够 - 它也匹配“options
”。 :(
有人能告诉我使用正确的正则表达式吗?
答案 0 :(得分:1)
您正在测试字符串中的“on”位置。您需要使用以下内容将“on”锚定到字符串的前面:
/^on/
干杯。