3

我正在尝试从字符串中删除中文字符。试过这个,但不能让它工作。它说:

警告: preg_replace() [function.preg-replace]:编译失败:\x{...} 序列中的字符值在偏移量 9 处太大

preg_replace('/[^\x{4e00}-\x{9fa5}]+/', '', $string)

我怎样才能得到这个工作?

4

1 回答 1

10

在 UTF-8 模式下,允许使用 "\x{...}",其中大括号的内容是一串十六进制数字。

您似乎没有处于 UTF-8 模式。要启用此模式,请将u修饰符添加到正则表达式的末尾。

于 2012-08-28T21:02:57.367 回答