\ b修饰符不适用于Unicode字符

时间:2013-01-15 08:35:30

标签: php regex unicode preg-replace preg-match

我希望使用preg_replace修饰符\b替换确切的单词,如this问题中所述。

但似乎对波斯语和阿拉伯语等Unicode字符不起作用。这个例子有效:

preg_replace('/(\bto\b|\bis\b)/i', '', 'go to test if var is set using isset')

但是这个不起作用:

preg_replace('/(\bاز\b|\bبه\b)/i', '', 'راه مدرسه به خونه از اونجا میگذره')

有没有办法获得所需的结果,分裂字边界?

1 个答案:

答案 0 :(得分:4)

自己动手,只需将\u修饰符简单地用作

preg_replace('/(\bاز\b|\bبه\b)/iu', '', 'راه مدرسه به خونه از اونجا میگذره')