当前位置: 技术问答>linux和unix
sed的 字符串替换的问题
来源: 互联网 发布时间:2016-10-30
本文导语: string=hello.cc.hh substring=$( echo $string | sed 's/.*.//g' ) echo $substring 得到 结果为 hh。 如果 我想得到 cc.hh, 那substring的表达式应该怎么写? 再问一下,为什么 那个 sed 的正则表达式 会匹配 最后一个 ‘.’ ...
string=hello.cc.hh
substring=$( echo $string | sed 's/.*.//g' )
echo $substring
得到 结果为 hh。
如果 我想得到 cc.hh, 那substring的表达式应该怎么写?
再问一下,为什么 那个 sed 的正则表达式 会匹配 最后一个 ‘.’ , 而不是第一个 ‘.’ 呢?
substring=$( echo $string | sed 's/.*.//g' )
echo $substring
得到 结果为 hh。
如果 我想得到 cc.hh, 那substring的表达式应该怎么写?
再问一下,为什么 那个 sed 的正则表达式 会匹配 最后一个 ‘.’ , 而不是第一个 ‘.’ 呢?
|
这个通用一点。
$ echo $string | sed 's/[^.]+.//'
cc.hh
|
至少一个匹配