JS 正则 允许半角英数字、- (减号)、_ (下划线) 允许全角文字 英数字、记号(空格除外)

EMMET_C 2013-12-13 09:43:37
JS正则表达式允许数字、字母、减号、下划线 和全角所有文字,包括全角符号 , 空格除外(全角,半角空格都不行)
半角的符号就_ - 可以用,别的都不可以用

求大神赐教
...全文
610 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
EMMET_C 2013-12-16
  • 打赏
  • 举报
回复
引用 5 楼 xiangyuecn 的回复:
凑个热闹,貌似你在百度知道提过问了
var exp=/^(?:\w|-|\r|\n|[\u0100-\uFFFF])*$/i;//姑且认为ascii以外字符全是全角,对汉字来说全覆盖,全角空格?是神马字符?用"【空格】".charCodeAt(0)获取unicode码后从范围中删除即可
console.log(exp.test("_azAZ\n010-189554\n好啊《书名号》?全角问号\n换行"));//true
console.log(exp.test("+"));//false
console.log(exp.test(" "));//false
这都被你知道了,太不好意思了。。
高坚果兄弟 2013-12-15
  • 打赏
  • 举报
回复
引用 3 楼 jslang 的回复:
/^[\w\-\u0100-\u2fff\u3001-\uffff\r\n]+$/.test(str)
突然发现正解,学习了
高坚果兄弟 2013-12-15
  • 打赏
  • 举报
回复
凑个热闹,貌似你在百度知道提过问了
var exp=/^(?:\w|-|\r|\n|[\u0100-\uFFFF])*$/i;//姑且认为ascii以外字符全是全角,对汉字来说全覆盖,全角空格?是神马字符?用"【空格】".charCodeAt(0)获取unicode码后从范围中删除即可
console.log(exp.test("_azAZ\n010-189554\n好啊《书名号》?全角问号\n换行"));//true
console.log(exp.test("+"));//false
console.log(exp.test(" "));//false
EMMET_C 2013-12-13
  • 打赏
  • 举报
回复
引用 3 楼 jslang 的回复:
/^[\w\-\u0100-\u2fff\u3001-\uffff\r\n]+$/.test(str)
好厉害,我自己弄了很久,就是不能完全匹配上
天际的海浪 2013-12-13
  • 打赏
  • 举报
回复
/^[\w\-\u0100-\u2fff\u3001-\uffff\r\n]+$/.test(str)
天际的海浪 2013-12-13
  • 打赏
  • 举报
回复
/^[\w\-\u0100-\u2fff\u3001-\uffff]+$/.test(str)
EMMET_C 2013-12-13
  • 打赏
  • 举报
回复
还有 可以换行

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧