正则
gaunjia
前端开发专家
python
wechat:guanroonjia
展开
-
正则4:正则表达式回溯原理
回溯主要是针对量词的。 因为量词有不确定性,而默认匹配是贪婪的, 所以,会匹配最大个数, 这时候量词匹配完了,继续往后匹配, 发现匹配不到,再把匹配的字符一个个的吐出来重新匹配, 直到可以匹配到最大两次为止。 这个过程就是回溯 回溯其实就是深度优先搜索算法 1、如果有多个贪婪量词,那么优先匹配最先的贪婪量词 2、贪婪量词后面给?使用非贪婪模式,也就是惰性模式。 但是惰性模式也可能发生回溯,因为尽管是尽量匹配少的量词,但是也需要保证能匹配上 ...原创 2020-09-27 13:41:31 · 277 阅读 · 0 评论 -
正则3:正则表达式中的括号
1、分组 var regex = /(ab)+/g; var string = "ababa abbb ababab"; console.log( string.match(regex) ); // => ["abab", "ab", "ababab"] 1.1 数据分组提取替换 var regex = /(\d{4})-(\d{2})-(\d{2})/; var string = "2017-06-12"; console.log(string.replace(regex, `$..原创 2020-09-27 13:40:11 · 973 阅读 · 0 评论 -
正则2: 正则表达式位置详解
正则中共有 6 个位置标示符号 ^、$、\b、\B、(?=p)、(?!p) 注意,位置符号指的是字符之间的空隙,可以理解为”" ^ 标示开头 $ 标示结尾 \b 指的是单词边界 具体就是 \w 与 \W 之间的位置,也包括 \w 与 ^ 之间的位置,和 \w 与 $ 之间的位置 "[JS] Lesson_01.mp4".replace(/\b/...原创 2020-09-27 13:39:25 · 445 阅读 · 0 评论 -
正则1:基础概念
1、横向匹配,量词 {m, n} 前一个字符重复的次数 {m} = {m, m} 出现 m 次 {m,} 出现大于等于 m 次 ? {0,1} + {1,} * {0} 2、纵向匹配,范围 [abc], [a-c], [1,23],[1-3] ...原创 2020-09-27 13:38:46 · 179 阅读 · 1 评论