\d,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^$
分别是什么?
\d:表示数字字符;等价于[0-9]
\w:单词字符,数字,下划线;等价于[a-zA-Z0-9_]
\s:空白符;等价于[\t\n\f\x0B\r]
[a-zA-Z0-9]:匹配大小写字母和数字;
\b
:单词边界
.
:除了回车和换行外的所有字符;
*
:出现0次或多次
+
:至少出现一次
?
:出现0次或1次
x{3}
:出现3次x
^$:表示开始和结尾;
贪婪模式和非贪婪模式指什么?
贪婪模式 :贪婪模式在整个表达式匹配成功的提前下,尽可能多的匹配。即,正则表达式一般趋于最大长度匹配。
非贪婪模式:在整个表达式匹配成功的前提下,以最少的匹配字符。
写一个函数trim(str),去除字符串两边的空白字符
![](https://img.haomeiwen.com/i3264781/6bc34ae193aebb86.png)
使用实现 addClass(el, cls)、hasClass(el, cls)、removeClass(el,cls),使用正则
代码:
![](https://img.haomeiwen.com/i3264781/255bf5117b9f5937.png)
输出:
![](https://img.haomeiwen.com/i3264781/0f10f26e858648be.png)
写一个函数isEmail(str),判断用户输入的是不是邮箱
![](https://img.haomeiwen.com/i3264781/44ef0e51b9b2b1c0.png)
写一个函数isPhoneNum(str),判断用户输入的是不是手机号
![](https://img.haomeiwen.com/i3264781/31f4a18e333647b7.png)
写一个函数isValidUsername(str),判断用户输入的是不是合法的用户名(长度6-20个字符,只能包括字母、数字、下划线)
![](https://img.haomeiwen.com/i3264781/d911fe4b6a49dd15.png)
写一个函数isValidPassword(str), 判断用户输入的是不是合法密码(长度6-20个字符,只包括大写字母、小写字母、数字、下划线,且至少至少包括两种)
![](https://img.haomeiwen.com/i3264781/5639ae25b09f34b4.png)
写一个正则表达式,得到如下字符串里所有的颜色(#121212)
![](https://img.haomeiwen.com/i3264781/14ad27db42c9a4c8.png)
只写正则的话目前只想到这一步,如果有更好的请老师指教是在想不出来了(实现3为16进制和6位16进制颜色,考虑到有的人冒号后可能会跟0或多个空格)
下面代码输出什么? 为什么? 改写代码,让其输出hunger,world
var str = 'hello "hunger" , hello "world"'; var pat = /".*"/g; str.match(pat);
输出:
![](https://img.haomeiwen.com/i3264781/5ac1e7e6dd53a0d3.png)
匹配
""
和之间的除回车换行的任意字符修改后:
![](https://img.haomeiwen.com/i3264781/8ffa0605851d909e.png)
补全如下正则表达式,输出字符串中的注释内容. (可尝试使用贪婪模式和非贪婪模式两种方法)
非贪婪模式:
![](https://img.haomeiwen.com/i3264781/8239e6aec7273817.png)
贪婪模式:
![](https://img.haomeiwen.com/i3264781/917e8d8553b11388.png)
补全如下正则表达式:
![](https://img.haomeiwen.com/i3264781/ca7ddd5bc24d5014.png)
网友评论