使用带子字符串的sed命令替换

使用带子字符串的sed命令替换,sed,substring,regexp-substr,Sed,Substring,Regexp Substr,我希望使用sed命令替换子字符串值 我有一个这样的文件 UNIT56712423MP000000R0990 此文件中的记录始终具有相同的长度 我需要检查第21个字符是否为R,然后将字符13-14从MP替换为GH 有没有办法通过sed命令实现这一点 谢谢您的帮助。已在gnu上试用过 sed -E '/^\w{20}R\w{4}$/s/^(.{12})../\1GH/' <<<UNIT56712423MP000000R0990 sed-E'/^\w{20}R\w{4}$/s/^

我希望使用sed命令替换子字符串值

我有一个这样的文件

UNIT56712423MP000000R0990
此文件中的记录始终具有相同的长度

我需要检查第21个字符是否为
R
,然后将字符13-14从
MP
替换为
GH

有没有办法通过sed命令实现这一点

谢谢您的帮助。

已在gnu上试用过

sed -E '/^\w{20}R\w{4}$/s/^(.{12})../\1GH/' <<<UNIT56712423MP000000R0990

sed-E'/^\w{20}R\w{4}$/s/^(.{12})/\1GH/'回答:是的。作为一个新用户,请阅读下面的内容。如果你不付出最小的努力,你就不会让任何人在这里为你做作业。如果你的正则表达式有问题,请出示正则表达式,以便我们可以帮助你解决它,谢谢你的帮助。。我是用perl实现的