使用 preg_match 来匹配奇怪的字符

Using preg_match to match weird characters

我正在尝试使用 preg_match 来匹配所有字母和数字,但我遇到了 preg_match 似乎不匹配的奇怪字母。我怎样才能让它匹配?那个奇怪的 'e' 叫什么?是否还有更多像 'e' 这样怪异的字符需要我注意?

<?php

$string = "pokémon";
preg_match("~(\w+)~", $string, $match);
print_r($match);

?>

结果:

数组([0] => 学习 [1] => 学习)

需要结果:

数组([0] => 神奇宝贝 [1] => 神奇宝贝)

您可以使用 'u' 修饰符 (utf-8):

~(\w+)~u

regex101 demo