【问题标题】:Replace all captured groups but first in sed [duplicate]替换所有捕获的组,但首先在 sed [重复]
【发布时间】:2018-12-28 10:05:57
【问题描述】:

我正在尝试将数字列表替换为“a”字母。

我已经能够在在线正则表达式测试器中执行此操作,您可以找到 here

示例:123,456,789 ==> 123,a,a

但是,我把它翻译成 sed 命令,就像这样,它不起作用。

echo "123,456,789" | sed 's/\(\d*\)\(,\d*\)/\1,a/g'

产生:

123,a456,a789

我错过了什么吗?

【问题讨论】:

标签: regex bash shell sed replaceall


【解决方案1】:

这个简单的sed 可能会对您有所帮助:

$ sed -r 's/,[0-9]+/,a/g' <<< "123,456,789"
123,a,a

【讨论】:

    猜你喜欢
    • 2011-10-29
    • 1970-01-01
    • 1970-01-01
    • 2017-05-02
    • 2011-10-09
    • 2018-07-23
    • 2018-04-27
    • 1970-01-01
    • 2019-09-25
    相关资源
    最近更新 更多