gpt4 book ai didi

ruby - 如何在ruby中给定的两个字符串之间打印字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 17:09:36 25 4
gpt4 key购买 nike

我有一个字符串(多行),我需要得到两个给定字符串之间的字符串。
如:

multiline_string = %q{testtestbegin
test1
test2
test3
end
test
xxx
xxx
begin
yyy
yyy
end
hhh
}

我需要找到“开始”和“结束”之间的字符串。有两个火柴我要把这两张打印出来。
有没有办法在regex中像 (?<=begin)(.*)(?=end)
请帮忙。

最佳答案

r = /
(?<=begin\n) # match 'begin' followed by a newline in a positive lookbehind
.*? # match any number of any character, lazily
(?=end\n) # match 'end' follwed by a newline in a positive lookahead
/mx # multiline and free-spacing regex definition modes

arr = multiline_string.scan(r)
#=> ["test1\ntest2\ntest3\n", "yyy\nyyy\n"]
arr.each { |s| puts s }
test1
test2
test3
yyy
yyy

关于ruby - 如何在ruby中给定的两个字符串之间打印字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42888562/

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