Php 匹配示例短代码的正则表达式
我需要一个PHP正则表达式的帮助,它将匹配下面的示例短代码:Php 匹配示例短代码的正则表达式,php,regex,Php,Regex,我需要一个PHP正则表达式的帮助,它将匹配下面的示例短代码: [smiley set_name="Happy" filename="smiling.gif"] 我想从上面的短代码中提取“Happy”和“smilling.gif”。我将非常感谢你的帮助。提前谢谢。我不确定您可以假定知道多少字符串,但可能类似于: /\[smiley set_name="([\w\s]+)" filename="(\w+.gif|jpg|png|jpeg)"\]/ 因此,您的代码可能如下所示: $string =
[smiley set_name="Happy" filename="smiling.gif"]
我想从上面的短代码中提取“Happy”和“smilling.gif”。我将非常感谢你的帮助。提前谢谢。我不确定您可以假定知道多少字符串,但可能类似于:
/\[smiley set_name="([\w\s]+)" filename="(\w+.gif|jpg|png|jpeg)"\]/
因此,您的代码可能如下所示:
$string = '[smiley set_name="Happy" filename="smiling.gif"]';
preg_match('/\[smiley set_name="([\w\s]+)" filename="(\w+.gif|jpg|png|jpeg)"\]/', $string, $matches);
var_dump($matches);
如果它在wordpress中,您可以从它的短代码处理程序中获取这些属性:如果您不确定字符串,那么:
(?因为他在问题标题“表达式匹配示例短代码”中提出了这个问题)。您提供的正则表达式与短码不匹配,它只提取数据。但正则表达式很好。谢谢@DrRoach,我尝试了您的名字,它成功了。最后一件事,set_name与空格不匹配。如果我有“快乐的脸”而不是“快乐”,它没有被提取。@xcoder更改了我的答案,使它现在也可以匹配空格。希望这就是你想要的