gpt4 book ai didi

ruby - 在字符串中查找所有组的连续单词

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

我需要在一个字符串中找到所有两个连续单词的组,但只能找到长度为 2-3 个字符的单词。到目前为止,我已经有了这个:

'toolong fee fi fo fum toolong verylong aa bb'.scan(/\b[a-z]{2,3}\s+\b[a-z]{2,3}/)
=> ["fee fi", "fo fum", "aa bb"]

但是我想要这样的东西:

=> ["fee fi", "fi fo", "fo fum", "aa bb"]

非常感谢任何帮助。

最佳答案

您需要使用前瞻和捕获组才能进行重叠匹配。

> 'toolong fee fi fo fum toolong verylong aa bb'.scan(/(?=\b([a-z]{2,3}\s+[a-z]{2,3})\b)/)
=> [["fee fi"], ["fi fo"], ["fo fum"], ["aa bb"]]
> 'toolong fee fi fo fum toolong verylong aa bb'.scan(/\b(?=([a-z]{2,3}\s+[a-z]{2,3})\b)/).flatten
=> ["fee fi", "fi fo", "fo fum", "aa bb"]

关于ruby - 在字符串中查找所有组的连续单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33613590/

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