gpt4 book ai didi

ruby - 使用正则表达式扫描字符串并返回精确值

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

下面显示了返回字符串中所有元音的基本方法。

x = "I love Ruby".scan(/[aeiou]/)

如果我将匹配的关键字分配给一个变量,我是否能够实现上面显示的相同结果?我试过了,但似乎不起作用:

y = %w[bus car truck]
"I drive a bus most times but I have a truck".scan(/[#{y}]/) { |z| puts z }

我只想匹配并返回精确值。

最佳答案

Regexp::union应该工作:

Regexp.union(y)
#=> /bus|car|truck/

"I drive a bus most times but I have a truck".scan(Regexp.union(y))
#=> ["bus", "truck"]

正则表达式不考虑单词边界。这可能需要也可能不需要。

关于ruby - 使用正则表达式扫描字符串并返回精确值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28990583/

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