使用 sed 搜索和替换多位数字

问题描述 投票:0回答:1

我有以下文件列表:

r1 r2 10 r11 r99

我正在尝试替换 ls 输出中文件名中 r 之后的所有数字

我正在寻找的结果:

 rA rA  rA  rA  rA

使用以下 sed 命令我可以匹配文件 r1 r2 但不能匹配 r10 r11 和 r99

   ls | sed -e 's/r[0-9]/rA/'

它为我提供了以下输出:

rA
rA0
rA1
rA
rA9

如果有人能指出我在 sed 搜索模式中缺少的内容,我将不胜感激,sed 是否可以用来匹配多个数字?

谢谢你。

sed
1个回答
8
投票
  • [0-9]
    将匹配一位数字。

  • [0-9]*
    将匹配零个或多个数字。

  • [0-9]\+
    将匹配一位或多位数字。

  • [0-9]\{1,\}
    匹配一位或多位数字。

如果使用

sed -E
,更少的反斜杠:

  • [0-9]+
    将匹配一位或多位数字。

  • [0-9]{1,}
    匹配一位或多位数字。

© www.soinside.com 2019 - 2024. All rights reserved.