0

我构造了以下正则表达式

preg_match_all('#(autom(.*?)tic|(.*?)anual)#', $str2b, $gears);

但我想改变它以匹配希腊字符。我想匹配单词βενζίνηπετρέλαιο但我无法正常工作。

preg_match_all('#(βενζί(.*?)η|πετρέλ(.*?)ιο)#', $str2b, $gears);

我怎样才能做到这一点?

4

1 回答 1

5

您应该使用/u正则表达式开关进行 unicode 匹配:

preg_match_all('#(βενζί(.?)η|πετρέλ(.?)ιο)#u', $str2b, $gears);

顺便说一句,您可以使用\p{Greek}属性来匹配希腊字母。

于 2013-10-04T19:08:48.887 回答