gpt4 book ai didi

ruby - 检查两个字符串是否有两个连续的共同字符

转载 作者:数据小太阳 更新时间:2023-10-29 08:15:42 26 4
gpt4 key购买 nike

我需要检查两个字符串是否有两个相同的连续字符。

到目前为止我是这样写的:

 def substring_test(str1, str2)
return false if str1 == "" || str2 == ""
str1.downcase.scan(/.{1,2}/).each do |pair|
if str2.downcase.scan(/.{1,2}/).include? pair
return true
else
return false
end
end
end

但如果我有:“Home”和“om”,因为它每两个字符截断一次字符串。我可以添加什么条件才能在这些情况下起作用?我可以添加一个条件,在第一个字符后每两个字符截断字符串,但感觉可能有更简单的方法吗?

最佳答案

你可以做类似的事情

def substring_test(str1, str2)
str1.each_char.each_cons(2).any? { |pair| str2.include? (pair.join) }
end

使用 any? 方法将在找到第一个匹配项后立即退出循环。

关于ruby - 检查两个字符串是否有两个连续的共同字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34696809/

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