我的正则表达式中的错误在哪里?

时间:2013-02-07 08:58:39

标签: php regex

我正在尝试构建一个正则表达式,它将提取伪xml标签的值(在{}中包围而不是<>)并且它不起作用。用RegexBuddy验证了这个问题,我最喜欢的rx工具捕获得非常正确,但是在我的PHP代码中使用它时,我没有得到结果。 所以,进一步说,这就是问题所在:

$match=array();
$ret=preg_match('\{lang\s*=\s*[\"\']*?(.*?)[\"\']*?\s*/\}',"{lang='DE'/}xxxxlxlxlxl",$match);

为什么$匹配为空?

1 个答案:

答案 0 :(得分:1)

模式应为

/\{lang\s*=\s*[\"\']*?(.*?)[\"\']*?\s*\/\}/
^                                        ^