加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – (GNU)Sed:如何将第n个字符中的任何字符替换为第1

发布时间:2020-12-14 05:37:14 所属栏目:百科 来源:网络整理
导读:我需要在字符串中替换第10到第20个字符,如下所示: 123456789012345678901234567890 到目前为止,我已经尝试过: 一个) 仅适用于第10个角色: echo“123456789012345678901234567890”| sed’s /./ X / 10′ b) 不适用于该范围: echo "123456789012345678901
我需要在字符串中替换第10到第20个字符,如下所示:

123456789012345678901234567890

到目前为止,我已经尝试过:

一个)

仅适用于第10个角色:
echo“123456789012345678901234567890”| sed’s /./ X / 10′

b)
不适用于该范围:

echo "123456789012345678901234567890"  | sed 's/./X/10,20'
echo "123456789012345678901234567890"  | sed 's/./X/10,20'
echo "123456789012345678901234567890"  | sed 's/./X/{10,20}'
echo "123456789012345678901234567890"  | sed 's/./X/{10,20}'

不起作用,我得到错误

unknown option to `s’

所以 – 问题是 – 我该如何使它工作:

echo“123456789012345678901234567890”| sed’s /./ X / 10,20′

解决方法

尝试:

$sed -r "s/^(.{9})(.{11})/1XXXXXXXXXX/" <<< 123456789012345678901234567890
123456789XXXXXXXXXX1234567890

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读