# 作业一 (通关作业)
```js
var str = “fjskfjsl fjkdsjfkls fjklsfjlsd127.0.0.1fjksldfjafjio jfk192.168.1.101sljfs fsdjfkldsfjsklfsklffjoijfoiaf asfjs fed jfjf jf sdjfsi jfi jafis function dd ( ) { }afjsdiajf iosa function abc(){} jfisjad fjsaiofjaoissf addedfds0.0.0.0”
```
写两个正则表达式,一个是匹配 `127.110.60.1` 和 `192.168.1.101` 。
另一个是正则表达式,要匹配 `javascript 函数`。
## 完善作业
```js
var str = “fjskfjsl fjkdsjfkls fjklsfjlsd127.0.0.1fjksldfjafjio
027.22.222.210jfk192.168.1.101sljfs fsdjfkldsfjsklfs192.168.1688.10klffjoijfoiaf 192.168.0.1asfjs fed jfjf jf sdjfsi jfi jafis function dd ( ) { }afjsdiajf iosa function abc(){} jfisjad fjsaiofjaoissf addedfds function 00(){} function a(){} function ab(parmas){} function AbcdCde(parmas){}”
```
1. 上面第一个正则是匹配 `127.110.60.1` 和 `192.168.1.101` 这种情况,现在需要完善正则,能匹配IPv4地址。比如 `027.110.60.1`,`192.168.1.1011`这些是不能匹配的
2. 用上面的str再次校验是否能匹配 `javascript 函数`
## 作业点评
##### 第一个正则
如果真要匹配IPv4的IP地址,那要思考以下几点:
1. 要考虑`027.110.60.1`,`192.168.1.1011`,`a92._68.1.10$`,`256.255.255.255`这些是不能匹配的,`0.0.0.0`,`255.255.255.255`等情况是应该能匹配的
##### 第二个正则
1. 函数名可以是大小写混合,要熟悉函数命名规范,比如不能以数字开头等。
2. 注意声名过程中可能会有多余的空格,但这也是能正常命名函数的。
3. 是否会带上形参,形参的命名是否有要求。
## 扩展作业(实战项目中会遇到的业务需求)
#### 实现几个正则
1. 常用email
2. 中国手机号码
3. 身份证号码
4. 大于6位以字母开头的用户名
5. 大于6位的含数字大小写字母的密码, 或者再加上有特殊符号的密码
## 参考代码
无
- [分享]微信小程序入门与实战
- 学习大纲
- 关于学习的一些常见问题
- 第一周
- 每周作业
- 玩练作业
- 知识点
- 正确设置PORT端口(windows/mac)
- 发布npm包
- 第二周
- 每周作业
- [作业一 (通关作业)](第二周/作业一 (通关作业).md)
- 作业二 (通关作业)
- 作业三 (通关作业)
- 作业四(可选)
- 作业五(可选)
- 知识点
- 原型链及继承的理解
- 第三周
- 每周作业
- 作业一 (通关作业)
- 作业二 (通关作业)
- 作业三 (通关作业)
- 作业四(可选)
- 知识点
- 正则表达式常用方法
- promise用法
- 常用正则表达式大全
- 第四周
- 每周作业
- 玩练作业
- 知识点
- 第五周
- 每周作业
- 作业一(通关作业)
- 作业二 (通关作业)
- 作业三(玩练作业)
- 知识点
- 第六周
- 每周作业
- [作业一(通关作业)](第六周/作业一(通关作业).md)
- 知识点
- 第七周
- 每周作业
- 作业一(玩练)
- 作业二(玩练)
- 作业三(通关)
- 作业四(通关)
- 知识点
- 第八周
- 每周作业
- 作业一(玩练)
- 作业二(玩练)
- 作业三(通关)
- 知识点
- 第九周
- 每周作业
- 作业一(玩练)
- 作业二(玩练)
- 作业三(玩练)
- 作业四(通关)
- 知识点
- 第十周
- 每周作业
- 作业一(玩练)
- 知识点