gpt4 book ai didi

ruby-on-rails - 从 MatchData 中获取数据作为匹配函数的结果

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

我有一个自定义对象数组。这些对象有一个名为 name 的参数,它是 2 个字符串的串联,中间有一个分隔符。例如:名称可以是 Some@Data,其中“Some”是第一个字符串,“Data”是另一个字符串,@ 是分隔符。

我的意图是更新数组内所有对象的名称参数,这样参数将只有“数据”(即删除“Some@”)并在更新后将对象存储在另一个数组中。下面是代码:

final_array = array1.select do |object|
object.name = object.name.match(/@(.*?)$/)
end

当我打印 object.name.match(/@(.*?)$/) 时,输出如下:

#<MatchData "@Data" 1:"Data">

在此输出中,我如何从这个 MatchData 中获取“数据”。我尝试了 object.name.match(/@(.*?)$/)[1] 但它没有用。还是我需要更改我的正则表达式?

最佳答案

我会使用#each 和#gsub 方法:

array.each do |object|
object.name = object.name.gsub(/^.+@/, '')
end

关于ruby-on-rails - 从 MatchData 中获取数据作为匹配函数的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24421619/

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