JavaScript正则表达式基本语法

1.?\d,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^,$,分别是什么?
\d 匹配 [0-9] 数字字符
\w 匹配 [a-zA-Z_0-9] 单词字符,字母、数字下划线
\s 匹配 [\t\n\x0B\f\r] 空白符
[a-zA-Z0-9] 匹配范围类 小写字母a-z 大写字母 A-Z 和数字 0-9
\b 匹配单词边界
var str ='hello world';
/llo\b/.test(str); // true 匹配边界是llo
/wor\b/.test(str); // false 匹配边界是wor
. 匹配 [^\r\n] 除了回车符和换行符之外的所有字符
* 匹配 出现零次或多次(任意次)
+ 匹配 出现一次或多次(至少出现一次)
? 匹配 出现零次或一次(最多出现一次)
x{3} 匹配 x出现3次
^ 匹配 以xxx开头
$ 匹配 以xxx结束

2.?去除字符串两边的空白字符
?
var str = '  hello bsfans ';
function trim(str){
return str.replace(/^\s+|\s+$/g,'');
}
trim(str);

?3.?判断用户输入的是不是邮箱
?
var str = 'bsfans@admin.com';
function isEmail(str){
return /^\w+@\w+\.(com|cn|com\.cn)$/.test( str );
}
isEmail(str);

?4.?判断用户输入的是不是手机号
?
function isPhoneNum(str){
return /^1[3|5|6|7|8]\d{9}$/.test( str )
}
isPhoneNum('13600007663');

?5.?判断用户输入的是不是合法的用户名(长度6-20个字符,只能包括字母、数字、下划线)
?
function isValidUsername(str){
return /^\w{6,20}$/.test( str )
}
isValidUsername('a_3EDdfd');

?6.?判断用户输入的是不是合法密码(长度6-20个字符,只包括大写字母、小写字母、数字、下划线,且至少至少包括两种)
?
function isValidPassword(str){
if(str.length < 6 || str.length > 20){
return false;
}
var num = 0;
if(/[A-Z]/.test(str)){
num++;
}
if(/[a-z]/.test(str)){
num++;
}
if(/[0-9]/.test(str)){
num++;
}
if(/_/.test(str)){
num++;
}
return num >= 2;
}
isValidPassword('qweqeqew'); // false
isValidPassword('qweqe111'); // true

?
?
?
?
?
?
?
?
?
?
?
?
?
?
?

0 个评论

要回复文章请先登录注册