相关疑难解决方法(0)

与 SED 正则表达式的非贪婪匹配(模拟 perl 的 .*?)

我想用sed在第一之间的字符串替换任何AB第一的发生AC(含)用XXX

对于例如,我有这样的字符串(该字符串是仅用于测试):

ssABteAstACABnnACss
Run Code Online (Sandbox Code Playgroud)

我想类似这样的输出:ssXXXABnnACss


我这样做了perl

$ echo 'ssABteAstACABnnACss' | perl -pe 's/AB.*?AC/XXX/'
ssXXXABnnACss
Run Code Online (Sandbox Code Playgroud)

但我想用sed. 以下(使用 Perl 兼容的正则表达式)不起作用:

$ echo 'ssABteAstACABnnACss' | sed -re 's/AB.*?AC/XXX/'
ssXXXss
Run Code Online (Sandbox Code Playgroud)

sed text-processing regular-expression

37
推荐指数
4
解决办法
3万
查看次数

标签 统计

regular-expression ×1

sed ×1

text-processing ×1