我修饰符不适用于外语?

时间:2010-08-24 09:49:23

标签: php regex encoding modifier

我的字符串是外语。我使用以下正则表达式:

$str = 'մի քանի Բառ ձեր մասին';
$word = 'բառ';

$cont = preg_match_all("/.{0,80}[^\s]*?".preg_quote($word)."[^\s]*?.{0,80}/si",$str,$matched);
print_r($matched);//returns Array ( [0] => Array ( ) ) ..

...但如果我设置:

$word = "Բառ";//returns Array ( [0] => Array ( [0] => մի քանի Բառ ձեր մասին ) )  

我能做些什么才能在外语中使用I修饰符?

1 个答案:

答案 0 :(得分:5)

尝试添加u修饰符:

$cont = preg_match_all("/.{0,80}[^\s]*?".preg_quote($word)."[^\s]*?.{0,80}/siu",$str,$matched);