我在一个 html td 标记中有一个 url,该 url 分为多行,我需要加入。
例子:
<td>
<a
href="fix_detail.jsp?fix=23056&list=yes">PICTURE
ROCKS</a>
</td>
我需要将所有内容合并成这样:
<a href="fix_detail.jsp?fix=23056&list=yes">PICTURE ROCKS</a> </td>
我更愿意实现一个 sed 循环,但我不明白如何循环搜索结束的“td”标签。
sed '/<td>$/N;s/\n/ /;N;s/\n/ /;N;s/\n/ /;N;s/\n/ /'
最佳答案
保持理智,使用 awk 即可:
$ cat file
foo
<td>
<a
href="fix_detail.jsp?fix=23056&list=yes">PICTURE
ROCKS</a>
</td>
bar
$ awk '/<td>/{f=1} /<\/td>/{f=0} {ORS=(f?" ":"\n"); print}' file
foo
<td> <a href="fix_detail.jsp?fix=23056&list=yes">PICTURE ROCKS</a> </td>
bar
在 20 世纪 70 年代中期 awk 被发明时,所有用于跨多行执行操作的神秘 sed 结构都已过时,它们今天仅用作脑筋急转弯。
关于html - 使用 sed 加入 html 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30220599/