我尝试重用正则表达式组。
我有什么:
Other Stuff
Other Stuff
Anker: 'Result1' 'Result2' 'Result3' 'Result4' 'ResultN'
Other Stuff
Other Stuff
我想要的是什么:
$aVariable = [Result1, Result2, Result3, Result4, ResultN];
我尝试过:
Anker:(?: '(.*?)')+
(相信我,很多很多其他的正则表达,但我没有得到它。)
在单行中获取多个元素的正确方法是什么?
提前致谢!
答案 0 :(得分:2)
尝试以下\G
基于锚点的正则表达式。
$re = "/(?:^Anker:|\\G(?!^))\\h*'([^']*)'/m";
$str = "Other Stuff \nOther Stuff\nAnker: 'Result1' 'Result2' 'Result3' 'Result4' 'ResultN'\nOther Stuff\nOther Stuff";
preg_match_all($re, $str, $matches);
print_r($matches[1]);