我有一个类似这个问题的问题:php preg_replace
在那个问题中,他/她想只允许字母和数字以及_,但我想只允许数字,字母和 Unicode(非拉丁语)字母和数字(我想,我应该使用这个的Unicode值(例如U+1F70
))。
我该怎么办?谢谢......
答案 0 :(得分:1)
您应该使用Unicode字符类,而不是自己列出unicode范围:http://www.regular-expressions.info/unicode.html#block
preg_replace('/[^\w\d\p{L}]/u', "", $str);
如果您反复尝试构建或破译正则表达式,请不要忘记查看Is there anything like RegexBuddy in the open source world?以获取有助于此的实用程序。