我有一种方法可以查找“不”这个词,然后是一个词,但是如果我有一个句子,例如:
这很好。不好
由于某种原因,由于前面的句号,'not'不会被拾取,任何人都知道如何解决这个问题,代码如下
preg_match_all("/(?<=\b not\b)\b good\b/i", $find, $matches);
\b
匹配单词边界,即两个字符之间的位置,一个是单词字符,一个不是。单词字符是[a-zA-Z0-9]
. 您在 之前的空格之前匹配单词边界not
,并且那里没有单词边界,因为字符串的前一个字符是句号。
也就是说,句号和空格之间没有单词边界,因为两者都不是单词字符。
更多信息:http ://www.regular-expressions.info/wordboundaries.html