我知道这应该从字符串中删除任何字符,只保留数字和英文字母。
$txtafter = preg_replace("/[^a-zA-Z 0-9]+/","",$txtbefore);
Run Code Online (Sandbox Code Playgroud)
但我希望删除任何特殊字符并保留任何语言(如阿拉伯语或日语)的任何字母。
可能这对你有用:
$repl = preg_replace('/[^\w\s]+/u','' ,$txtbefore);
Run Code Online (Sandbox Code Playgroud)
这将从您的文本中删除所有非单词和非空格字符。/u标志是用于 unicode 支持。