我想用sed替换每个整数后面的字符.
例:
444 d
应该去:
444,d
编辑:stribizhev的答案帮助我找到了sed(GNU sed)4.2.2的解决方案
sed -r 's/([0-9]+)./\1,/g'
用逗号替换数字后的任意字符.唯一的问题是,该行末尾的数字还会创建一个额外的逗号.
您可以使用捕获组来执行此操作:
sed 's/\(\d\+\)./\1,/g'
Run Code Online (Sandbox Code Playgroud)
或者(因为使用GNU sed,您可以通过使用扩展正则表达式来避免所有转义括号)
sed -r 's/([0-9]+)./\1,/g'
Run Code Online (Sandbox Code Playgroud)
该[0-9]+模式匹配一个整数(不带小数),即使在较长的字符串内也可以使用较长的字符串.