我想要:
echo "penguin." | sed 's/\.[A-Za-z0-9][A-Za-z0-9]*$/'".pippa"'/g'
输出:
penguin.pippa
如何修改代码以便它可以解释'。'正常?
谢谢
答案 0 :(得分:2)
sed 's/\.[A-Za-z0-9]*$/'".pippa"'/g'
答案 1 :(得分:2)
echo "penguin."| sed 's/\.$/.pippa/g'
答案 2 :(得分:2)
你的表达:
sed 's/\.[A-Za-z0-9][A-Za-z0-9]*$/'".pippa"'/g'
你说在点之后必须有一个alphanum字符。 [A-Za-z0-9][A-Za-z0-9]*
这表示[A-Za-z0-9]
中的“一个或多个”。点后没有字母,字符串结束。所以sed永远不会应用这个改变。删除它,你就完成了:
echo "penguin." | sed 's/.[A-Za-z0-9]*$/.pippa/g'
此外,sed表达式第二部分中的引号在此处不起作用。
答案 3 :(得分:1)
echo "penguin." | sed 's/\./'".pippa"'/g'
或
echo "penguin." | sed 's/\.[A-Za-z0-9]*$/'".pippa"'/g'