【发布时间】:2019-12-22 13:52:52
【问题描述】:
我正在尝试找到一种解决方案,在一行中第一次出现数字之前添加符号 #。
Input:
NewYork1986
Paris20
tokyo1
Expected ouput:
NewYork#1986
Paris#20
tokyo#1
到目前为止,我已经尝试过:
sed 's/\([0-9].\).*/#\1/g'
Which gives me:
NewYork#19
Paris#20
tokyo1
我想我已经接近了,但有些东西不见了。
感谢您的帮助
【问题讨论】:
-
也许
sed 's/\([0-9][0-9]*\).*/#\1/g'(或者sed 's/\([0-9]+\).*/#\1/g'如果可行的话会更好) -
您在 sed 中使用
g,这意味着所有出现。所以你需要做的就是:sed 's/[0-9]/#&/'。找到第一个数字,并将其替换为#和任何匹配的(&)。