正则表达式的作用是高效的匹配字符串。学习完正则表达式之后,涉及到字符串的操作第一时间要想到正则表达式。
1.优势
创建正则
字面量方式eg: let reg = /afei/ ,用于匹配字符串中的 "afei" 字段构造函数形式eg: let reg = new RegExp("afei") ,用于匹配字符串中的 "afei" 字段。正则方法
正则自身的方法eg: reg.test(str) ,检测字符串str中是否包含reg规则,返回布尔值。
eg: reg.exec(str) ,返回包含匹配结果的数组,没有则返回null。如果正则有 g 标 志,那么继续调用reg.exec(str) 时,紧接着上次的匹配位置往下匹配。
字符串中能使用正则的方法eg: str.match(reg) ,返回包含匹配结果的数组,和exec类似。
eg: str.replace(reg,str|function) ,将匹配的内容用第二个参数的str或者函数返回 值替换,返回替换得到的新字符串。
eg: str.split(reg) ,按照正则规则切割。
标志
可以在正则表达式后加上标志,标志分为三种:
i (不区分大小写), g (全局匹配), m (换行匹配)。
其中i g 较为常用。eg: let reg = /afei/i ,既可以匹配字段"afei",又可以匹配字段"AFei"。
转义
普通意义\n \r \t 等,用于匹配字符串中对应的转义。
特殊配合\s \S 空格 非空格
\d \D 数字 非数字
\w \W 字符(数字、字母、下划线) 非字符
\b \B 独立部分(起始位置、结束位置、以及除了\w外的) 非独立部分
特殊符号转义比如要匹配 / 这个字符,不能直接写,需要转义,正则里面需要转义的特殊符号有: ()[]{}\/^$|?*+. 。
关键词: 正则表达式