给定的是字符串:dog apple orange banana我需要让它:monkey apple cow banana这是没有调用sed两次。
dog apple orange banana
monkey apple cow banana
5q4ezhmt1#
下面的sed示例应该可以解决您的问题。sed允许使用多个-e开关,这允许您一次替换多个内容。
sed -e 's/dog/monkey/g' -e 's/orange/cow/g'
ma8fv8wu2#
使用;对命令进行排队:
;
sed -e 's/dog/monkey/g;s/orange/cow/g'
u4dcyp6a3#
这也可以通过使用捕获组(如\(.*\),用括号表示)和引用每个捕获组的反向引用(如\1、\2等)来完成。
\(.*\)
\1
\2
sed 's|dog\(.*\)orange\(.*\)|monkey\1cow\2|'
3条答案
按热度按时间5q4ezhmt1#
下面的sed示例应该可以解决您的问题。sed允许使用多个-e开关,这允许您一次替换多个内容。
ma8fv8wu2#
使用
;
对命令进行排队:u4dcyp6a3#
这也可以通过使用捕获组(如
\(.*\)
,用括号表示)和引用每个捕获组的反向引用(如\1
、\2
等)来完成。