任何人都可以帮我找到下面的正则表达式
$string = "id=A12dk9-mds&name=4950";
我需要找到正则表达式来查找动态值(在此示例中为A12dk9-mds
)。
即=
和&
答案 0 :(得分:2)
正如@MarkBaker所说,最好的方法不是正则表达式,而是parse_str()
,因为你实际上正在处理一个网址的查询字符串。
因此,以下应该可以正常工作:
parse_str($string,$arr);
echo $arr['id']; // A12dk9-mds
答案 1 :(得分:1)
可以使用简单的正则表达式。
/id=([^&]*)&/
<强>解释强>
id=
匹配id = ([^&]*)
除了与&amp;尽可能符号并返回&
与&amp; 只要您知道它们将始终位于=
和&
之间,这将有效。
PHP代码:
$string = "id=A12dk9-mds&name=4950";
preg_match('/id=([^&]*)&/',$string, $answer);
print_r($answer[1]);
答案 2 :(得分:1)
RegEx是错误的工具。这看起来像一个查询字符串,所以让我们使用PHP的查询字符串解析器parse_str
。
$string = "id=A12dk9-mds&name=4950";
parse_str($string, $parsed);
echo $parsed['id'];