我在使用正则表达式时遇到了困难,我在没有任何先前匹配的情况下获得了单独的“收入”。
$string = "FY2013 EPS, FQ 2012 revenue";
preg_match_all("/F[Y|Q]\s?\d{4}\sEPS|revenue/", $string, $matches);
print_r($matches);
结果:
Array ( [0] => Array ( [0] => FY2013 EPS [1] => revenue ) )
我期待的是:
Array ( [0] => Array ( [0] => FY2013 EPS [1] => FQ 2012 revenue ) )
最佳答案
它读作 OR 收入 - 您想使用:
"/F[Y|Q]\s?\d{4}\s(?:EPS|revenue)/"
其中
?:
表示非捕获组关于php - 正则表达式正在划分单个语句?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15702593/