返回博客

正则表达式笔记与技巧

记录正则表达式使用技巧,包括在 VS Code 中使用正则表达式进行批量替换,贪婪匹配与非贪婪匹配的示例。

Mt.r
|

正则这个东西,黑科技,黑科技。这儿就放我的正则笔记吧。就是正则技巧

正则表达式

  • ^.* 匹配每一行
  • $0 匹配到的第一个值

在 vscode 里面用正则

我做 IE 兼容的时候碰到了个 bug,同事写页面用了模板字符串,里面包含了一大堆 div,像下面这种

let dom = `
<div>
  12313
</div>
`;

然后我兼容要改成这样

let dom = '<div>' + '  12313' + '</div>';

哇,真难受,关键是这个 div 很长很长,然后我又不能直接乱改,要做兼容我只能字符串拼接,难道我要一行一行加吗?

这时候我想起来 vscode 的正则了,打开 ctrl + f 搜索框勾上小齿轮

搜索条件输入正则表达式 ^.* 替换条件填写 '$0' + 回车,rua 的一下,全加上了,真香啊。自动在每一行的开头和结尾加上想要的东西。

非贪婪匹配

见文章 【正则表达式系列】贪婪与非贪婪模式

贪婪匹配

var str='aacbacbc';
var reg=/a.*b/;
var res=str.match(reg);

// aacbacb index 为 0
console.log(res); // acbacb

非贪婪匹配

var str='aacbacbc';
var reg=/a.*?b/;
var res=str.match(reg);

// aacb index 为 0
console.log(res); // aacb