我对sed不太好。它看起来很复杂。但是,我已经学会了如何用另一个字符串替换字符串的所有实例
sed 's/replace-this/with-this/FLAG'
但是,如果我想说替换所有以" a"开头的单词。并且有第三个字母" p",有水果,我该怎么做?
答案 0 :(得分:1)
这可能适合你(GNU sed):
jdk
这会使用sed 's/\<a\wp\w*\>/fruit/g' file
开头字边界作为标记,用于以字符\<
开头的单词的开头,后跟另一个单词字符,后跟a
,由零个或多个单词字符组成,后跟一个p
结束字边界,全局替换为单词\>
。
答案 1 :(得分:0)
假设:
$ echo "$tgt"
app
apple
applesauce
grape
gum
apple is a fruit
text apple and pears
你可以这样做:
$ echo "$tgt" | sed 's/a.p.*/fruit/'
fruit
fruit
fruit
grape
gum
fruit
text fruit
如果您只想要单词(不是该行的其余部分),您可以这样做:
$ echo "$tgt" | sed -E 's/a.p[a-zA-Z]*/fruit/'
fruit
fruit
fruit
grape
gum
fruit is a fruit
text fruit and pears