当我使用sed运行正则表达式时
echo "abc-def-stg" | sed -e '/(\w*$)/g'
在regexr.com上它没有问题,但是当我尝试使用stg提取值stg时,它是行不通的。
谁能解释为什么?
答案 0 :(得分:1)
sed
用于替换字符串。您正在尝试提取。
使用(作为John1024 said)
echo "abc-def-stg" | sed '/.*-//'
它将删除所有(包括最后一个连字符)。或者
echo "abc-def-stg" | grep -oE '[^-]+$'
它将提取字符串末尾除连字符以外的所有字符。