gpt4 book ai didi

带有单行标志的正则表达式命令行

转载 作者:行者123 更新时间:2023-12-01 21:23:48 24 4
gpt4 key购买 nike

我需要在 bash 中使用正则表达式用于替换文件中可能位于多行的文本的脚本。
我会通过 s作为我知道的其他正则表达式引擎中的标志,但我很难使用 bash。

sed据我所知不支持此功能。
perl它显然可以,但我不能让它在一个类轮上工作 perl -i -pe 's/<match.+match>//s $file

示例文本:

DONT_MATCH

<match some text here
and here
match>

DONT_MATCH

最佳答案

默认情况下,. 不匹配换行符。 s 只是让 . 匹配任何字符。

您一次读取一行文件,因此您不可能匹配跨越多行的内容。使用 -0777 将整个输入视为一行。

perl -i -0777pe's/<match.+match>//s' "$file"

关于带有单行标志的正则表达式命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63385953/

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