我实际上可以使用以下方式执行前导<h1>
:
sed s/\<h1\>/\<h2\>/ myblog.html
但如何让它也跟踪</h1>
?
所以我想从:
<h1> some header </h1> to <h2> some header </h2>
答案 0 :(得分:2)
定义sed替换命令时不需要使用斜杠,它可以是另一个符号:
sed -e 's/<h1>/<h2>/g' -e 's_</h1>_</h2>_g'
答案 1 :(得分:1)
使用捕获组捕获可选的/
并通过反向引用替换捕获组:
sed -r 's/<(\/?)h1>/<\1h2>/' myblog.html
-r
选项是激活扩展正则表达式。
答案 2 :(得分:0)
有时候我发现HTML标签最简单的解决方案是完全忽略结束标签中的斜杠,并将打开和关闭与单个模式匹配,如下所示:
sed 's/h1>/h2>/' myblog.html