php preg_match - 匹配[POLYLINE]和[END]之间的字符

时间:2013-12-13 11:04:38

标签: php regex preg-match

令我惭愧的是,我不知道如何正确使用正则表达式。我有一个大文本文件,我有兴趣匹配标签[POLYLINE]和[END]之间的每个字符串出现。结构没有嵌套,这意味着我在其他[POLYLINE]和[END]中没有其他[POLYLINE]和[END]标签。我试过了:

preg_match_all('/\[POLYLINE\](.*?)\[END\]/', $fileContents, $matches);

希望在$ matches中获得一个字符串数组。这会返回一些东西,但不是我需要的东西。

1 个答案:

答案 0 :(得分:2)

为DOTALL功能添加s标志,使其在多行中匹配:

preg_match_all('/\[POLYLINE\](.*?)\[END\]/s', $fileContents, $matches);