上面的代码
preg_match('~\b(rain|dry|certain|clear)\b~i',$string);
它就像一个魅力,但当我在寻找带有突出字符的单词时,它不起作用。 有人可以帮助我
答案 0 :(得分:0)
嗯,从技术上讲,a和á和à都是解释器的不同字符。它们的编码方式不同,无法知道哪些不同的编码代表“相似”字符(在某些语言中,重音字符是截然不同的字母)。因此,您需要包含要匹配的所有变体。但是,如果您需要字符串中的实际偏移量,则可能会遇到困难,因为对于UTF-8字符串,偏移量以字节为单位而不是字符。
有关如何包含角色的所有版本的示例,请参阅this SO question。
this bug report以防您遇到错误偏移的问题。