给出字符串:
100,000 this is some text 12,000 this is text I want to match.
我需要一个基于匹配
匹配 12,000 的正则表达式text I want to match
因此,我们可以获得一个职位:
strpos($haystack, 'text I want to match');
然后,我想我们可以使用正则表达式向后看:
但是,这是我需要帮助的地方。
答案 0 :(得分:2)
很简单:
/ ([0-9,]+) this is text I want to match\.$/
演示:
http://sandbox.onlinephpfunctions.com/code/b288ca9a322c7a5b54c6490334540ab142b6a979
答案 1 :(得分:2)
如果你知道数字总是在你想要匹配的基础上下文之前......
preg_match('/([\d,]+)\D*text I want to match/', $str, $match);
var_dump($match[1]);
答案 2 :(得分:0)
另一种解决方案:
$re = "/([\\d,]+)(?=\\D*text I want to match)/";
$str = "100,000 this is some text 12,000 this is text I want to match.";
preg_match($re, $str, $matches);