首页 > 解决方案 > 使用带有子字符串的 sed 命令来替换

问题描述

我正在寻找使用 sed 命令来替换子字符串值。

我有这样的文件

UNIT56712423MP000000R0990

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

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

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

谢谢你的帮助。

标签: sedsubstringregexp-substr

解决方案


在 gnu sed 上试过

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

推荐阅读