每当我需要使用正则表达式时,我似乎都无法正确使用它们......
给定一个像这样的字符串:
$string = 'text here [download="PDC" type="A"] and the text continues [download="PDS" type="B"] and more text yet again, more shotcodes might exist ...';
我需要打印“此处的文本”部分,然后根据变量“PDC”和“A”执行 mysql 查询,然后打印字符串的其余部分......(如果更多 [下载] 存在于细绳)。
到目前为止,我有以下正则表达式
$regex = '/(.*?)[download="(.*?)" type="(.*?)"](.*?)/';
preg_match($regex,$string,$res);
print_r($res);
但这仅捕获以下内容:
Array ( [0] => 111111 [1] => 111111 [2] => )
我正在使用 preg_match() ...我应该使用 preg_match_all() 代替吗?无论如何......正则表达式肯定是错误的......有什么帮助吗?