Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我刚开始使用正则表达式和 sed,但遇到以下问题:
echo "abc2def3ghi" | sed 's/^\(.*\)[0-9]\(.*\)$/"&" \1\2/i'
我希望删除第一个数字(在这种情况下为 2,但可以删除任何单个数字),但结果如下:
"abc2def3ghi" abc2defghi
我将如何实现这一目标?
谢谢。
试试这个 :
sed 's/[0-9]//1' file.txt
1中的数字s///1代表第 N次出现
1
s///1
sed没有不情愿/非贪婪的量词,因此您必须专门匹配零个或多个非数字:
sed
^\([^0-9]*\)[0-9]\(.*\)$