正则表达式
今天参加学校的双选会,觉得自己好渺小,要走的路真的好长。或许过几年我也会像今天hr这样看着当年那么青涩的自己,过来人总会觉得什么都是如此简单。希望我也快一点成为一个过来人。
————————————————————————————————————————————————————————————————————————————————————————————————碎碎念。
正则表达式基础知识准备:
正则表达式实现的经典案例:
1.利用正则表达式实现常用手机
要求:a. 以1开头;b. 第二位是3、5、8;c. 后面跟9位0-9数结尾。
var mobileReg = /^1(3|5|8)\d{9}$/; var mobile1 = "13548785524"; var res1 = mobile1.match(mobileReg); console.log(res1);
2.匹配常用邮箱
要求:1. @之前必须有多个数字或者是英文字符即:0-9a-zA-Z;b. @之后必须紧跟多个小写英文字符或者数字,以及它们的组合; c. .之后跟多个英文字符;d. c可重复
var emailReg = /^\w+@[a-z0-9]+(\.[a-z]+)+$/; var email1 = "tisikcci@foxmail.com"; var res1 = email1.match(emailReg); console.log(res1);
3. 匹配IP地址
首先来看IP地址的构成:
本机IP: 182.149.203.211
IP由四个位置组成,且每个位置用 . 隔开,第一个位置范围:1-223;后面三个位置都是 0-255;
第一个位置的实现:
1-9:[1-9]
10-99:[1-9]\d
100-199:1\d{2}
200-223:2[0-2][0-3]
后面三个位置和.
.:\.
0-9:\d
10-99:[1-9]\d
100-199:1\d{2}
200-255:2[0-5]{2}
即:(\.(\d|[1-9]\d|1\d{2}|2[0-5]{2})){3}
完整表达 :
/^([1-9]|[1-9]\d|1\d{2}|2[0-2][0-3])(\.(\d|[1-9]\d|1\d{2}|2[0-5]{2})){3}$/
var IPReg = /^([1-9]|[1-9]\d|1\d{2}|2[0-2][0-3])(\.(\d|[1-9]\d|1\d{2}|2[0-5]{2})){3}$/; var IP1 = "192.168.1.15"; var res1 = IP1.match(IPReg); console.log(res1);