使用sed,awk或者其他东西我想在文件中用字符串作为前缀,例如。
输入:
sometext(0, 456)
sometext(01, 10)
输出:
sometext(somestring0, somestring456)
sometext(somestring01, somestring10)
我尝试使用sed,但我的技能有限,所以我没有设法产生任何有意义的输出。
使用OSX10.11所以我知道sed在BSD中的行为与其他* nix的行为略有不同。
如果能更好地解决这个问题,我手边还有perl和python,但是sed和awk是首选。
答案 0 :(得分:4)
您可以使用此sed命令匹配并捕获数字并替换前缀:
sed -E 's/[[:digit:]]+/somestring&/g' file
sometext(somestring0, somestring456)
sometext(somestring01, somestring10)
请注意,somestring
不应包含&, \1, \2, \3
等特殊替换构造。