学习笔记

精准传达 • 价值共享

洞悉互联网前沿资讯,探寻网站营销规律

查看其它板块

巧用编辑器正则表达式,批量修改删除超链接

作者:狐灵科技 | 2020-11-07 16:08 |点击:

作为一个网站技术人员,经常会遇到匹配替换文字或者超链接等等事情,一般的替换或者修改使用批量替换软件就可以轻松搞定,也有特使的替换,这时候就用到了正则表达式,Dreamweaver给我们提供了强大正则查找替换功能。它不仅能批量替换普通文本,而且还能灵活应用正则表达式进行批量替换。

此做法适合经常仿站的猿们,以notepad++为例


今天我要带给大家的技巧是用notepad++正则表达式批量修改删除超链接

前一段时间人机交互课程要我们找好看的网站界面保存下来修改,但另存为的界面往往包含大量的链接,一点又跳转回原始的网页了,而手动去删除链接又是浩大的工程,所以我就想能不能用记事本的replace来批量查找删除链接,但是每个连接的指向又不同,所以不能用统一的关键字,这里就必须用到regular express(正则表达式)了。windows自带的记事本貌似是不支持正则表达式的,我在windows上常用的notepad替代工具是notepad++他是一款优秀的开源记事本软件可以在http://www.notepad-plus-plus.org/下载,当然你也可以用别的notepad工具替代,大同小异啦。



1. 用notepad++打开htm文件,按ctrl+f打开寻找菜单,选择Replace,在左下角点选regular express(不能忘哦)



2. 输入pattern :在 find what中输

<a href=".*?">


在replace with里面输入你要替换的东西,我要把链接去掉,可以简单的把链接改为"#",就可以填写

<a href="#">


现在来解释一下.*?的意思。 .(dot/点)表示除换行外的任意字符, *(star/星号)表示前一个字符的闭包,也就是前一个字符重复零次或任意次,比如a*就表示a,aa,aaa,aaaa,aaaa.....,.*就是任意字符串。而为什么要加?呢? ?表示只重复0或1次,在这里?可以去除正则表达式的贪婪算法。如果没有?正则表达式将按照最大匹配的字符串。举个例子,比如下面代码:

<a href=“index.htm”>主页</a> <br><a href="news">新闻</a>


如果没有问号<a href=".*">正则表达式匹配到的将是

<a href=“index.htm”>主页</a> <br><a href="news">


而不是我们要的

<a href=“index.htm”>


<a href="news">


这样,通过正则表达式,我们实现了批量修改超链接

正则表达式是形式语言中非常强力的一个表达工具,它可以通过简单的符号来表示一种语言模式,引入正则表达式为计算机文本处理提供了强力的工具。

如没特殊注明,文章均为狐灵科技原创,转载请注明   "巧用编辑器正则表达式,批量修改删除超链接
多一份免费策划方案,总有益处。

请直接添加技术总监微信联系咨询

网站设计 品牌营销

多一份参考,总有益处

联系狐灵科技,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:15082661954 / 大客户专线:15523356218