sed在正则表达式周围添加文本

时间:2012-06-23 10:51:14

标签: regex unix sed

我希望能够去:

sed "s/^\(\w+\)$/leftside\1rightside/" 

并且(\w+\)匹配的组出现在'leftside'和'rightside'之间。

但似乎我必须管它两次,一个用于文本的左边,另一个用于右边。如果有人知道一次通过的方法,我会很感激。

1 个答案:

答案 0 :(得分:0)

它不起作用的原因是你可能指定了错误的正则表达式。在您的情况下,如果文字仅包含 字词,则会在 行的末尾和开头添加文字(假设您的sed版本支持\w表示法。如果不使用+选项,您也无法逃避-r。{/ p>

尝试从sed "s/^\(.*\)$/leftside\1rightside/"sed "s/.*/leftside&rightside/"开始,并从中开始。