0

我希望能够去:

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

并让匹配的组(\w+\)出现在“左侧”和“右侧”之间。

但似乎我必须用管道传输两次,一次用于文本的左侧,另一次用于右侧。如果有人知道一次性完成的方法,我将不胜感激。

4

1 回答 1

0

它不起作用的原因是您可能指定了错误的正则表达式。在您的情况下,仅当文本仅包含单词字符(假设您的版本sed支持\w符号)时,才会在行尾和行首添加文本。如果不使用该选项,您也没有逃避+应该做的事情。-r

尝试从sed "s/^\(.*\)$/leftside\1rightside/"或只是sed "s/.*/leftside&rightside/"从那里开始工作。

于 2012-06-23T11:01:34.160 回答