Ruby on rails正则表达式

时间:2013-08-19 05:49:26

标签: ruby-on-rails ruby

在我的rails应用程序中,我需要实现正则表达式,以匹配文本的起点,终点和中间附近的字符串。也就是说,如果查询词是“Gabbar Singh”,它应匹配“Gabbar”或“Gabbar Singh”。我使用%%符号实现它。它正在工作,但如果“Gabbar Singh”出现在一个单词的中间,它就无法工作。例如,如果某些文字包含“#GabbarSingh”,则表示没有显示特定结果。

我的控制器代码。

@tweets = Tweets.where("tweet_text LIKE?", "%#{search_term}%")

我的视图代码

<% @tweets.each do |tweets| %>

<ul>

  <li><%= tweets.id %></li>
  <li><%= tweets.tweet_created_at %></li>

  <li><%= tweets.tweet_source %></li>
  <li><%= tweets.tweet_text %></li>
  <li><%= tweets.user_id %></li>
  <li><%= tweets.user_name %></li>
  <li><%= tweets.user_sc_name %></li>
<li><%= tweets.user_loc %></li>
  <li><%= tweets.user_img %></li>
  <li><%= tweets.longitude %></li>
  <li><%= tweets.latitude %></li>
<li><%= tweets.place %></li>
  <li><%= tweets.country %></li>


<% end %>
</ul>

我希望我的结果能够匹配任何带有“Gabbar Singh”的字符串或单词。有人帮我这个。

1 个答案:

答案 0 :(得分:0)

你试过这样的吗?

@tweets = Tweets.where(“tweet_text ILIKE?”,“%#{search_term}%”)