ruby 中的正则表达式问题,出于某种原因,我需要在ruby 的 gsub 方法中的一行
假设输入sample
字符串变量是多行字符串,如下所示
begin1 item abc item abc item
extra end1
begin2 item abc item abc extra end2
begin1 item abc item abc extra end1
规则是将item
块内的所有内容begin1
更改end1
为love
,它可能跨越多行
替换后,输出sample
应该是
begin1 love abc love abc love
extra end1
begin2 item abc item abc extra end2
begin1 love abc love abc love end1
解决方案是这样的
puts sample.gsub!(/(begin1.*)item*(.*end1)/m,'\1love\2')