【问题标题】:How to loop through an array and search attribute for a substring [closed]如何遍历数组并搜索子字符串的属性[关闭]
【发布时间】:2012-10-14 20:38:31
【问题描述】:

我需要遍历一组对象 Ads 并找到属性 :name 包含 params[string_search] 的子字符串的对象

【问题讨论】:

  • 你需要一个 jQuery 插件
  • 您必须在您的问题中添加一个标签,代表您正在使用的技术,以便我们都能弄清楚问题的背景。
  • 你写了什么?向我们展示您工作的示例代码。对我们来说,修正你写的东西比在黑暗中猜测你可能做了什么要容易得多。

标签: ruby search substring


【解决方案1】:

这可能对你有用:

ads = Ads.select do |ad|
   ad.respond_to?(:name) && ad.name =~ /#{params[:string_search]}/
end

【讨论】:

    【解决方案2】:

    试试这个:

    #assumes your array of objects is called 'foo'
    foo.select{|o| o.name =~ /#{params[:string_search]}/}
    

    【讨论】:

      【解决方案3】:

      我认为您正在使用 Ruby,因为符号 :name 这应该会让你朝着正确的方向前进,你有一个对象数组,并且正在 :name 属性中寻找刺痛的“ool”。

      a = [{:name => 'no'},{:name => 'pool'}, {:name => 'cool'}]
      a.find_all{|elem| elem[:name].index "ool"}
      

      【讨论】:

        【解决方案4】:

        让 ary 成为 Ads 对象的数组。 (希望你使用的是 ruby​​)

        ary.find{|obj| !obj.name.match(/#{params[string_search]}/).nil?}
        

        使用“选择”而不是“查找”来选择所有此类对象

        【讨论】:

        • 是的,我正在使用 ruby​​。我会尝试使用它,看看它是否有效
        • 希望这个“params[string_search]”是“params[:string_search]”,不要错过冒号
        猜你喜欢
        • 1970-01-01
        • 2017-04-28
        • 2015-01-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-04-14
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多