HTML 5输入框只能输入汉字、字母、数字、标点符号?正则如何写?

本来是想过滤表情的,但是android上有个bug就是第三方输入法输入的表情,无论用什么方法都不能匹配到,所以只能反着来做,匹配只能输入汉字、字母、数字、标点符号的正则了。求指教!

阅读 6.6k
4 个回答

谢邀
包含中文,英文,数字,下划线,不能输入括号,不能以数字开头的正则
/^([a-zA-Z]|[u4e00-u9fa5]|_)([a-zA-Z0-9]|[u4e00-u9fa5]|_)*$/

中文[u4e00-u9fa5]
字母[a-zA-Z]
数字[0-9]

我也找了好久,网上答案也没找到,找大神写了一个:

/[^.,,。!@#$%^&*()-+=_\[\]{}|~`;:"'《》?、;“”‘’()【】{}!¥……\s0-9a-zA-Z\u4e00-\u9fa5]+/gi
if(content.match(/\W/g)){
    return false;
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题