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. angular.js - angular內容過長展開收起效果2. 關于nginx location配置的問題,root到底是什么3. 關于docker下的nginx壓力測試4. angular.js - angularjs的自定義過濾器如何給文字加顏色?5. docker鏡像push報錯6. python - flask表單 如何把提交多行數據在服務端讀取出來?7. python 怎樣用pickle保存類的實例?8. 并發模型 - python將進程池放在裝飾器里為什么不生效也沒報錯9. python的前景到底有大?如果不考慮數據挖掘,機器學習這塊?10. 大家好,請問在python腳本中怎么用virtualenv激活指定的環境?
