gpt4 book ai didi

regex - 如果另一个特定字符串不在同一行,则 Perl 正则表达式替换 : Substitute particular string,

转载 作者:行者123 更新时间:2023-12-01 19:34:40 25 4
gpt4 key购买 nike

我有这样的文字:

Hi
... OK ... Replace ...
... BAD ... Replace ...
Hi

当且仅当“BAD”不在同一行的任何位置时,我想用“Done”替换所有“Replace”字符串。所以唯一应该修改的行是我给出的示例中的第二行。我正在努力做到这一点,我尝试了以下不起作用的方法:

perl -i'' -pe 's/^(?!BAD)Replace/$1Done/g' 测试

这可以像我想做的那样用一个表达式来完成吗?

最佳答案

您试图在单个正则表达式中做太多事情。这更直接,也更容易做到正确

perl -pe "s/Replace/Done/ unless /BAD/" mydata

输出

Hi
... OK ... Done ...
... BAD ... Replace ...
Hi

关于regex - 如果另一个特定字符串不在同一行,则 Perl 正则表达式替换 : Substitute particular string,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23013311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com