【发布时间】:2019-08-25 04:59:15
【问题描述】:
我有大约 50 个 html 文件,我必须用空行替换完整性和 sha 部分
在所有的 html 文件中我们都可以找到常用的 JS
<script crossorigin='anonymous' integrity='sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q' src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js'></script>
我只需要用
替换它<script src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js'></script>
我尝试了sed 命令
sed -i -e 's|<script crossorigin='anonymous' integrity='sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q' src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js'></script>|<script src='https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js'></script>|g' *.html
它并没有取代任何一个
【问题讨论】:
-
HTML 有很多边缘情况,仅使用正则表达式很难解析。你愿意接受使用 BeautifulSoup 解析器的 Python 脚本吗?
-
是的,但是我设法在 sed 命令中做到了,而且效果很好,
-
您可以回答自己的问题,以便将来的读者。 :-)
标签: html regex linux shell sed