什么是正则表达式
正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。
这些模式被用于 RegExp 的 exec 和 test 方法, 以及 String 的 match、replace、search 和 split 方法。
正则表达式存在于大部分的编程语言,就算是在写shell时也会不经意的用到正则。
比如大家最喜欢的rm -rf ./*,这里边的*就是正则的通配符,匹配任意字符。
在JavaScript也有正则表达式的实现,差不多就长这个样子:/\d/(匹配一个数字)。
个人认为正则所用到的地方还是很多的,比如模版字符的替换、解析URL,表单验证 等等一系列。
如果在Node.js中用处就更为多,比如请求头的解析、文件内容的批量替换以及写爬虫时候一定会遇到的解析HTML标签。
赘述那些特殊字符的作用并没有什么意义,浪费时间。
推荐MDN的文档:
关于正则表达式,个人认为以下几个比较重要:
贪婪模式与非贪婪模式P.S. 关于贪婪模式和非贪婪模式,发现有些地方会拿这样的例子:
1 /.+/ // 贪婪模式 2 /.+?/ // 非贪婪模式