如何使用sed替换字符串中的值,但保持字符串完整

水晶月亮

如何使用sed替换字符串中的值,但保持字符串完整无缺?

例如 echo "01XX1234"

我希望将其替换XX为十六进制值,011234保持不变。我已经尝试了所有我能想到的组合,但是sed正在使我变得更好。

我可以这样做,但是有没有更简单的方法?

echo "01XX1234" | sed -n 's/\(01..1234\)/01AB1234/g'
费利克斯·迪特里希(Felix Dietrich)

sed 只会替换字符串的匹配子字符串。

$ echo '01XX1234' | sed 's/XX/AF/'
01AF1234

如果您打算始终替换第三个和第四个字符,但保持第一个和第二个字符不变,则可以使用:

$ echo '01XX1234' | sed 's/\(.\{2\}\).\{2\}/\1AF/'
01AF1234
  • \{2\}表示两次出现在前面的字符(在这种情况下.:任何字符)
  • \(...\)括号用于创建匹配组;您可以稍后在模式或替换字符串中引用匹配的子字符串
  • \1 引用第一个匹配的子字符串(在这种情况下,即“ 01”)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用sed替换字符串中的字符串?

来自分类Dev

如何使用sed替换字符串中的字符串?

来自分类Dev

(PHP)如何使用值数组替换字符串中的不同子字符串?

来自分类Dev

sed中的字符串替换

来自分类Dev

使用sed递归替换字符串

来自分类Dev

使用sed替换特定的字符串

来自分类Dev

使用sed进行字符串替换

来自分类Dev

使用Sed或Awk替换字符串

来自分类Dev

使用sed进行字符串替换

来自分类Dev

使用sed替换字符串,使用匹配字符串中的信息

来自分类Dev

如何替换字符串中的字符

来自分类Dev

如何用sed替换SQL文件中的字符串

来自分类Dev

当字符串中包含“ http://”时,sed如何替换?

来自分类Dev

如何使用sed在字符串中将逗号替换为“ \”

来自分类Dev

如何使用“ sed”命令替换字符串的尾部

来自分类Dev

如何使用sed替换多行字符串?

来自分类Dev

如何使用sed替换括号内的字符串

来自分类Dev

如何使用sed替换多行字符串?

来自分类Dev

如何使用sed替换其中带有“ \”的字符串?

来自分类Dev

如何使用sed将字符串替换为类别?

来自分类Dev

使用sed替换字符串中的版本号

来自分类Dev

使用sed查找并替换文件中的字符串

来自分类Dev

使用Sed查找并替换文件中的字符串

来自分类Dev

使用sed查找并替换多个文件中的字符串

来自分类Dev

使用 Sed 替换日志中的字符串

来自分类Dev

如何使用sed替换字符串中的后3个字符

来自分类Dev

如何替换字符串中的字符串

来自分类Dev

如何使用nunjucks替换字符串中的字符

来自分类Dev

如何使用 foreach 循环替换字符串中的字符?