验证中英文数字和下划线中划线
2009-10-22 15:26
435 查看
遇到个正则的问题,要求验证中英文,数字和下划线中划线可以通过,其它字符不能通过。
英文和数字好说,\w,下划线和中划线也好说,-_,然后是中文判断,\u0391-\uFFE5。于是我写了这个正则:
if(/[^\w_-\u0391-\uFFE5]/.test(str)),结果发现英文数字下划线和中划线都可以通过,唯独中文不能通过!很奇怪。
换了下顺序,将中文的判断放在了前面,如下if(/[^\u0391-\uFFE5\w_-]/.test(str)就正常了。奇怪了。猜想可能“-”放在[]中间,前后都有数值,让“-”起到了类似于0-9a-z的作用吧。
英文和数字好说,\w,下划线和中划线也好说,-_,然后是中文判断,\u0391-\uFFE5。于是我写了这个正则:
if(/[^\w_-\u0391-\uFFE5]/.test(str)),结果发现英文数字下划线和中划线都可以通过,唯独中文不能通过!很奇怪。
换了下顺序,将中文的判断放在了前面,如下if(/[^\u0391-\uFFE5\w_-]/.test(str)就正常了。奇怪了。猜想可能“-”放在[]中间,前后都有数值,让“-”起到了类似于0-9a-z的作用吧。
相关文章推荐
- 验证中英文数字和下划线中划线
- java代码验证用户名,支持中英文(包括全角字符)、数字、下划线和减号 (全角及汉字算两位),长度为4-20位,中文按二位计数
- PHP正则匹配中英文、数字及下划线的方法【用户名验证】[原创]_php技巧_脚本之家
- c# 正则验证 只能中文,英文,数字下划线,首个字符不能数字,6-20个字节
- 自定义easyui整数或者数字、字母或者下划线验证方法
- PHP匹配 数字 中英文 及 下划线
- JS正则表达式验证账号、手机号、电话和邮箱 验证帐号是否合法 验证规则:字母、数字、下划线组成,字母开头,4-16位。 复制代码 function checkUser(str){ var
- js正则验证数字,字母和下划线(至少包含其中两种,数字不能开头)
- 满足中文,英文,数字,中划线,下划线的正则表达式
- 验证 字母、数字、下划线
- 记录用到的正规,验证中文、英文、数字、下划线
- JS验证用户名必须以字母(不区分大小写)、数字、下划线(_)随意组合的字符
- java 正则验证 数字,字母,下划线还有汉字的正则表达式和email
- PHP正则匹配数字中英文及下划线
- 验证文本框转化为金额,小数点后只能输入两位数字
- UILabel 添加中划线和下划线
- Java杂谈之正则表达式--日期,邮箱,数字验证
- 图文验证码—数字验证技术
- java中验证字符串是不是数字
- JS正则表达式验证数字非常全