在bash中我想替换
H+O2=O+OH
与
H+O_2=O+OH
我用awk和sed尝试了无数的东西,但到目前为止没有任何工作。
问题是我不知道如何保存字符串,然后只需添加_
而不是替换O
或2
。
谢谢!
答案 0 :(得分:5)
您可以使用sed
:
$> s='H+O2=O+OH'
$> sed -E 's/([A-Z])([0-9])/\1_\2/g' <<< "$s"
H+O_2=O+OH
答案 1 :(得分:0)
如果Perl是一个选项,你可以使用一种非常类似于Anubhava的技术:
echo 'H+O2=O+OH' | perl -pe 's/([A-Z])([0-9])/\1_\2/g'