-6ren">
gpt4 book ai didi

ruby - 如何在 Ruby 中使用正则表达式从此字符串 "!!one!! **two** @@three@@"中提取单词

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

在 IRB 中,我可以这样做:
c =/(\b\w+\b)\W*(\b\w+\b)\W*(\b\w+\b)\W*/.match("!!one** *两个* @@three@@ ")

得到这个:
=> MatchData "one** *two* @@three@@ "1:"one"2:"two"3:"three"

但假设我事先不知道单词的数量,我怎么还能从字符串中提取所有单词。例如,它可能是“!!one** *two* @@three@@ "在一个实例中,但在另一个实例中可能是 "!!five** *six* "。

谢谢。

最佳答案

> " !!one** *two* @@three@@ ".scan(/\w+/)
=> ["one", "two", "three"]

此外,如果使用 ()scan 可以返回数组的数组。

> "Our fifty users left 500 posts this month.".scan(/([a-z]+|\d+)\s+(posts|users)/i)
=> [["fifty", "users"], ["500", "posts"]]

http://ruby-doc.org/core/classes/String.html#M000812

关于ruby - 如何在 Ruby 中使用正则表达式从此字符串 "!!one!! **two** @@three@@"中提取单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3887345/

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