我有这样的正则表达式在PHP之间的匹配换行符:正则表达式,标签
preg_match('/\[summary\](.+)\[\/summary\]/i', $data['text'], $match);
它正常工作时,总结标签之间的文本是在一行上。但是,当它包含换行符时,它不匹配。
我试过在这里找到一个正确的修饰符:http://nl2.php.net/manual/en/reference.pcre.pattern.modifiers.php 但是唯一与换行符有关的是“m”,那不符合我的要求。
如何使这项工作?
请注意,您的正则表达式将匹配[summary],然后匹配字符串的末尾,然后回溯直到找到[/ summary]。你可能想要的是在[summary]之后的第一个[/ summary]之后停止匹配。最简单的方法是使用非贪婪量词:(。+?) – Blixt 2009-06-17 10:40:34
只有一组summarry标记,它只能由管理员编写,所以在这里并不重要。谢谢你的提示。 – 2009-06-17 11:52:57