找到一个匹配包含重音字母的单词边界的regexpression

时间:2015-04-24 15:25:20

标签: php regex preg-match

我需要在preg_match中使用一个正则表达式来捕捉像cialis这样的单词作为带空格的单词,也可以作为带有标记的单词,即<b>cialis</b>,所以我使用了这个

$word = "cialis";
if (preg_match_all("/\b$word\b/i", $content, $matches)) {
        $caught[] = $matches[0];
    }

哪种方法效果很好,并没有用像cialis这样的专家这样的词来解雇。一切都很好,直到我点击一些法语单词,如spécialisé é被视为一个单词边界,因此spécialisé被捕获。什么正则表达式会阻止spécialisé被添加到$ caught?

提前谢谢。

1 个答案:

答案 0 :(得分:4)

您可以将修饰符u用于unicode字符串:

/\b$word\b/iu