私はこのような文字列を持っています:
test:blabla
そして、sed では、「:」の後にあるものを別のものに置き換えたいと考えています。
単語を置き換えることはできますが、「:」の後の単語を置き換えることはできません。インターネットで答えを探しましたが、何も見つかりませんでした。
助けはありますか?
使用する:sed 's/:.*/:replaceword/'
$ echo test:blabla | sed 's/:.*/:replaceword/'
test:replaceword
または、use test test:blabla test
に続く単語のみを置き換えたい場合::
sed 's/:[^ ]*/:replaceword/'
$ echo "test test:blabla test" | sed 's/:[^ ]*/:replaceword/'
test test:replaceword test
# Use the g flag for multiple matches on a line
$ echo "test test:blabla test test:blah2" | sed 's/:[^ ]*/:replaceword/g'
test test:replaceword test test:replaceword
> echo $SER2
test:blabla
> echo $SER2 | sed 's/\([^:]*:\).*/\1replace/g'
test:replace
>