我正在替换一个多行模式:
</p>
<ul>
使用以下sed
命令:
sed -e 's|<\/p>\n<ul>|\\begin{itemize}|g'
但它似乎没有正常工作。如何使用sed
替换上面的模式。
答案 0 :(得分:2)
假设你有GNU sed
,你可以使用循环:
sed ':a; N; $!ba; s|</p>\n<ul>|\\begin{itemize}|g' file
对于BSD/OSX sed
,请尝试:
sed -e ':a' -e 'N' -e '$!ba' -e 's|</p>\n<ul>|\\begin{itemize}|g' file
根据评论,只需添加每行开头的空格:
sed ':a; N; $!ba; s| *</p>\n *<ul>|\\begin{itemize}|g' fileg