php正则怎么写?

想要只保留中文,英文,数字以及(,!?、)这4个中英文符号,其他全部过滤掉的正则要怎么写?

阅读 2k
2 个回答
$str = '中文english123492348,!?!?,、{}【】)(*…………&(。';
$ret = preg_replace('#[^\x{4e00}-\x{9fa5},!?!?,、0-9a-z]#ius', '', $str);
var_dump($ret);

匹配中文:[u4e00-u9fa5]
匹配英文字母:[a-zA-Z]
匹配数字:[0-9]
需要转义的字符: ?

^[u4e00-u9fa5a-zA-Z0-9?!,、?!,]+$

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题