一、 \d,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^,$分别是什么?
/d表示0-9之间任一数字等价于[0,1,2,3,4,5,6,7,8,9],也等价于[0-9]
\w表示0-9任一数字、A-Z任一大写字母、a-z任一小写字母和下划线“”,等价于[a-zA-Z0-9]
\s表示空白符
[a-zA-Z0-9]表示a-z任一一个小写字母、A-Z任意一个大写字母和数字0-9中的任意一个
\b是单词的边界
.是所有除回车和换行以外的字符
*是表示出现零次或者任意多次,等同于{0,}
+是表示出现一次或多次,等同于{1,}
?是表示出现零次或一次,等同于{0,1}
x{3}是表示x出现3次
^X正则表示式中为以X开头的
X$正则表示式中为以X结尾的
二、 写一个函数trim(str),去除字符串两边的空白字符
三、 写一个函数isEmail(str),判断用户输入的是不是邮箱
四、 写一个函数isPhoneNum(str),判断用户输入的是不是手机号
五、 写一个函数isValidUsername(str),判断用户输入的是不是合法的用户名(长度6-20个字符,只能包括字母、数字、下划线)
六、 写一个函数isValidPassword(str), 判断用户输入的是不是合法密码(长度6-20个字符,只包括大写字母、小写字母、数字、下划线,且至少至少包括两种)
七、 写一个正则表达式,得到如下字符串里所有的颜色
var re = /*正则...*/
var subj = "color: #121212; background-color: #AA00ef; width: 12px; bad-colors: f#fddee "
console.log( subj.match(re) ) // ['#121212', '#AA00ef']
八、下面代码输出什么? 为什么? 改写代码,让其输出[""hunger"", ""world""].
var str = 'hello "hunger" , hello "world"';
var pat = /".*"/g;
str.match(pat);