【发布时间】:2015-08-14 21:10:43
【问题描述】:
我想用 sed 替换每个整数后的一个字符。
例子:
444 d
应该去:
444,d
编辑:stribizhev 的回答帮助我找到了 sed (GNU sed) 4.2.2 的解决方案
sed -r 's/([0-9]+)./\1,/g'
用逗号替换数字后的任意字符。唯一的问题是,行尾的数字也会产生一个额外的逗号。
【问题讨论】:
-
sed -i 's/ /,/g' $strign -
请向我们展示您迄今为止的工作。你试过什么?很高兴帮助您调试代码。
-
匹配你想要的文本总是微不足道的,不匹配你不想要的文本要困难得多,所以编辑你的问题以提供示例输入和预期输出,包括你认为很难的情况避免错误匹配(例如数字-空格-数字,或换行-空格-字母或...)。正如所写,您只需要
tr ' ' ','。另外-对您来说什么是数字?1,000?3.14?5e7?-3? -
我打算只搜索整数。对不起。请查看编辑。