0

我实际上可以这样做<h1>

sed s/\<h1\>/\<h2\>/ myblog.html 

但我如何让它也做尾随</h1>

所以我想从:

<h1> some header </h1> to <h2> some header </h2>
4

3 回答 3

2

定义 sed 替换命令时不需要使用斜杠,它可以是另一个符号:

sed -e 's/<h1>/<h2>/g' -e 's_</h1>_</h2>_g'
于 2013-01-16T12:34:35.103 回答
1

使用捕获组捕获可选/并通过反向引用捕获组来替换:

sed -r 's/<(\/?)h1>/<\1h2>/' myblog.html

-r选项是激活扩展正则表达式。

于 2013-01-16T12:26:20.390 回答
0

有时我发现 HTML 标记最简单的解决方案是完全忽略结束标记中的斜线,并将打开和关闭与单个模式匹配,如下所示:

sed 's/h1>/h2>/' myblog.html
于 2013-01-16T14:37:34.490 回答