gpt4 book ai didi

ruby - 检查字符串是否包含数组中的子字符串并获得匹配项

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

我在这里看到了几个线程,它们显示了根据子字符串数组检查字符串并在匹配时返回 bool 值的最有效方法。

str = "foobazbar"
arr = ["baz", "clowns"]
result = arr.any? { |substring| str.include?(substring) } # solution
result => true

但是,尽管该解决方案既优雅又高效,是否有任何方法可以返回匹配项本身?使用上面的示例,我还想知道匹配项是 baz。实现此目标的最佳方法是什么?

最佳答案

str = "foobazbar"
arr = ["baz", "clowns", "bar"]

r = Regexp.union(arr) #=> /baz|clowns|bar/ 

str[r]                #=> "baz"
str.scan(r) #=> ["baz", "bar"]

参见 Regexp::union , String#[]String#scan .

关于ruby - 检查字符串是否包含数组中的子字符串并获得匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58148738/

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