css - 怎样批量替换目录下的所有html文件的指定部分?
问题描述
<p id='topnav'> //新修改的代码</p>
<p id='topnav'> //以前的代码</p>
有个主页的顶部导航和其它的很多子页的顶部导航是相同的,现在修改了主页的顶部导航代码,子页的也要改了。可是一个一个地改实在是累死我了。有什么工具可以帮我完成这个工作吗?
问题解答
回答1:既然是前端,那么就可以用node写一个脚本,循环目录下的各个文件,利用正则去替换就好了
所以就是循环读取文件内容,找到内容,提取这一段内容,替换,更新保存,至于用什么语言无所谓
PS:如果之前保持良好的代码组织习惯的话,这个问题就不会出现,比如顶部导航做成一个片段,在需要的地方引入,这样以后修改起来就只要修改一处就好了,所以当你发现你在复用一长段代码时,最好拆成一个单独的文件
回答2:文本编辑器就可以 就是那个win下替代原生文本编辑器的软件
回答3:一样的代码不应该引用同一个模版吗?
回答4:sublime
回答5:Sublime Text 全文搜索正则替换
回答6:简单写了个循环替换的脚本,希望能帮到你。需要用到nodejs。安装Node.js
代码如下,filesArr为需要替换的文件数组,XXX是你新修改的代码:
var fs = require(’fs’);var filesArr = [ ’header.html’, ’child1/nav.html’, ’child2/nav.html’, ’child3/nav.html’];for(var i = 0; i < filesArr.length; i++) { var fileContent = fs.readFileSync(filesArr[i], ’utf-8’); var newCon = fileContent.replace(/(<p id='topnav'>[rn]*)[sS]*([rn]*</p>)/, '$1XXXrn$2'); fs.writeFile(filesArr[i], newCon);}
相关文章:
1. celery+redis 怎么看redis里面的内容2. 为什么redis中incr一个“0” 会报错?3. javascript - 最近用echarts做统计图时遇到两个问题!!4. android - TextInputLayout的空白显示问题5. android - 优酷的安卓及苹果app还在使用flash技术吗?6. android - 百度地图拖拽图标后原来位置的图标还在?7. css内联样式的style8. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么9. 微信$data =file_get_contents(’php://input’)取不到数据,抓包10. css - input中transition 设置background-color过渡,chrome浏览器页面初始化渲染会有过度效果

网公网安备