gpt4 book ai didi

regex - 如何使用linux命令搜索和替换文件中的多行字符串

转载 作者:太空宇宙 更新时间:2023-11-04 05:49:06 25 4
gpt4 key购买 nike

我有许多文件包含类似的字符串,例如多行字符串:

<script> var i = 100
var j = 200
var x = 1000 </script>

它可以是这样的:

<script> var i = 100
var j = 200
var x = 1000 </script>

<script> var i = 100

var j = 200

var x = 1000 </script>

我想用

替换它
<script> var i = 100
var j = 200
var x = xxxx </script>

请注意,该行也可以是无间距的,有时也可以是制表符

我遇到的问题是多行,如果它是简单的一行,那就容易了,

最佳答案

在 Perl 中多行替换很容易:

perl -0 -pe 's/<script>\s*var\s+i\s+=\s+100\s+var\s+j\s+=\s+200\s+var\s+x\s+=\s+1000\s+<\/script>/<script> var i =100\n         var j =100\n         var x = xxxx <\/script>/g' input-file

或者(可读性稍强):

   perl -0 -pe 's/<script>\s*
var\s+ i\s+ =\s+ 100\s+
var\s+ j\s+ =\s+ 200\s+
var\s+ x\s+ =\s+1000\s+
<\/script>/<script> var i =100\n var j =100\n var x = xxxx <\/script>/gx' input-file

关于regex - 如何使用linux命令搜索和替换文件中的多行字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47158199/

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