求验证用户名的正则式,必需以字母开头,只能包括字母\数字\下划线 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var reg= new RegExp(/^[a-zA-Z]+[a-zA-Z0-9_]*$/gi); 问一下,为什么前面[a-zA-z]以这个开头不需要*$,而后面不加我话,只能输入一位的字符呢? 不是很明白楼主的意思,出现的符号全都给你解释一遍吧^ 与字符串开始的地方匹配,不匹配任何字符[a-zA-Z] 指a-zA-Z中的任意一个字母,但只是一个,而不是多个^[a-zA-Z]放在一起表示以字母开头\w 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个* 表达式不出现或出现任意次$ 与字符串结束的地方匹配,不匹配任何字符这样写本身就不包含汉字在内的 lxcnn(过客) ( ) 信誉:100 Blog 2007-01-31 13:27:10 得分: 0 谢谢您的耐心解答,正则有学问啊,能告诉我如何在这里面限定字符长度呢 把*换成{m,n}这种形式就行了,m是最小值,n是最大值\w{5} 5位数字,字母或下划线\w{5,10} 5~10位的数字,字母或下划线\w{5,} 最少5位的数字,字母或下划线*相当于{0,}+相当于{1,}?相当于{0,1} 在这里说吧, 如果是字母 数字 _的这种要求 如果是在.net中 尽量别使用 \w\w 是匹配 所有文字字符与_,其中也包括你系统默认语言的字符 如中文所以 一般要象慕白兄那样写 要可靠一些 TO:cancerser我一般都是先在正则调试工具上调试,之后再用vs调试,以前还真没注意过这个问题,多谢,受教了 lxcnn(过客) ( ) 信誉:100 Blog 2007-1-31 14:16:14 得分: 0 把*换成{m,n}这种形式就行了,m是最小值,n是最大值\w{5} 5位数字,字母或下划线\w{5,10} 5~10位的数字,字母或下划线\w{5,} 最少5位的数字,字母或下划线*相当于{0,}+相当于{1,}?相当于{0,1}__________________________________________________________我写成^[a-zA-Z]+[a-zA-Z0-9_]{6,16}$这样,不好使啊,怎么回事呢 ^[a-zA-Z]+([a-zA-Z0-9_]{6,16})试试 我写成^[a-zA-Z]+[a-zA-Z0-9_]{6,16}$这样,不好使啊,怎么回事呢--------------------------要把前面那个+号去掉,你现在这么写的意思,就是最后为6~16位的a-zA-Z0-9_之一,前面为多少位的字母都可以了^[a-zA-Z][a-zA-Z0-9_]{6,16}$这样写加起来一共是7~17位,如果你的总长度要求是6~16位,那改下^[a-zA-Z][a-zA-Z0-9_]{5,15}$ uno(钢盅郭子) ( ) 信誉:99 Blog 2007-01-31 15:05:13 得分: 0 ^[a-zA-Z]+([a-zA-Z0-9_]{6,16})试试 ____________________________________________________大于6的可以验证出来,但是小于16的就不行了,大家看下 vs2005里有XElement类吗? 这个样式我该如何实现,高手们请帮忙 我怎样才能把<li> </li> 逐条读出来呢放到数据库中呢 JS 取GridView模板列中的值 获取本周的帖子,怎么写SQL 语句 ?? 登录验证的问题 .net里怎么调用.exe文件 求owc读取sqlserver数据库显示线性图表的源代码(最好vb。net) 静态页面和xml页面参数的问题 求助 大家谁知道这是怎么做出来的(高分等待)..给个思路. 我的源文件丢失,现在要做一个计数器。请问有可能实现吗?
[a-zA-Z] 指a-zA-Z中的任意一个字母,但只是一个,而不是多个
^[a-zA-Z]放在一起表示以字母开头
\w 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个
* 表达式不出现或出现任意次
$ 与字符串结束的地方匹配,不匹配任何字符这样写本身就不包含汉字在内的
lxcnn(过客) ( ) 信誉:100 Blog 2007-01-31 13:27:10 得分: 0
谢谢您的耐心解答,正则有学问啊,能告诉我如何在这里面限定字符长度呢
\w{5,10} 5~10位的数字,字母或下划线
\w{5,} 最少5位的数字,字母或下划线
*相当于{0,}
+相当于{1,}
?相当于{0,1}
\w 是匹配 所有文字字符与_,其中也包括你系统默认语言的字符 如中文
所以 一般要象慕白兄那样写 要可靠一些
把*换成{m,n}这种形式就行了,m是最小值,n是最大值\w{5} 5位数字,字母或下划线
\w{5,10} 5~10位的数字,字母或下划线
\w{5,} 最少5位的数字,字母或下划线
*相当于{0,}
+相当于{1,}
?相当于{0,1}
__________________________________________________________
我写成^[a-zA-Z]+[a-zA-Z0-9_]{6,16}$这样,不好使啊,怎么回事呢
试试
要把前面那个+号去掉,你现在这么写的意思,就是最后为6~16位的a-zA-Z0-9_之一,前面为多少位的字母都可以了^[a-zA-Z][a-zA-Z0-9_]{6,16}$
这样写加起来一共是7~17位,如果你的总长度要求是6~16位,那改下
^[a-zA-Z][a-zA-Z0-9_]{5,15}$
^[a-zA-Z]+([a-zA-Z0-9_]{6,16})
试试
____________________________________________________
大于6的可以验证出来,但是小于16的就不行了,大家看下