黑马程序员技术交流社区
标题:
有关JavaScript正则表达式
[打印本页]
作者:
小小企鹅
时间:
2012-5-10 08:26
标题:
有关JavaScript正则表达式
必须是字母数字或下划线, 不能以数字开头:
function right(un){
var m = '^[a-zA-Z_][0-9a-zA-Z_]{1,}$';
if(!un.match(m))
{
username = document.getElementsByName('username');
$('alertu').innerHTML=' 必须是字母数字或下划线, 不能以数字开头';
unr = 0;
}
else
{
$('alertu').innerHTML='用户名可用';
unr = 1;
}
}
这样写可以正确判断吗?
作者:
李啸
时间:
2012-5-10 08:31
"[a-zA-Z_][a-zA-Z_0-9]{0,}",
作者:
周素强
时间:
2012-5-10 10:33
要看你要求有没有长度了,如果从第二位以后就没有特殊的要求的话可以这样写:
"[a-zA-Z_]\\w+" 这里面的\\w代表着是[a-zA-Z_0-9] ;+代表一位或多位
下面付上常用的正则表达式符号:
预定义字符类
. 任何字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
注意在字符串中\代表着转义,所以使用上方预定义字符类时需在前面多加\如:\\d
Greedy 数量词
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
Logical 运算符
XY X 后跟 Y
X|Y X 或 Y
(X) X,作为一个捕获组 (组的编号是从1开始算起,可以有多个组)
Back 引用
\n 任何匹配的 nth 捕获组
引用
\ Nothing,但是引用以下字符
\Q Nothing,但是引用所有字符,直到 \E
\E Nothing,但是结束从 \Q 开始的引用
边界匹配器
^ 行的开头
$ 行的结尾
\b 单词边界
\B 非单词边界
\A 输入的开头
\G 上一个匹配的结尾
\Z 输入的结尾,仅用于最后的结束符(如果有的话)
\z 输入的结尾
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2