宝石国家使用Regexp

时间:2013-02-11 20:35:56

标签: regex ruby-on-rails-3 country

我使用来自hexorx的country gem,这里是gem的链接 Countries gem

我在代码country.rb中看到,可以将Regexp作为搜索国家/地区的参数。问题是,我甚至不知道如何使用Regexp 我想做的是,例如,给我所有以“T”开头的国家。我试着用这个

1.9.3-p327 :013 > c = Country.find_all_countries_by_name("/(T*)/")
 => []  

你怎么看,根本不起作用。

1 个答案:

答案 0 :(得分:0)

所有以T开头的国家/地区都会显示如下:

c = Country.find_all_countries_by_name("/^T[A-Za-z ]*/")

在这种情况下,您正在执行以下操作:

/ - start of the match
^ - matches the start of the string (so the next character MUST be first)
T - literal T 
[A-Za-z ] - a "character class" allowing any a-z upper or lower plus space
* - repeat previous character (or character class) 0-many times

这是学习正则表达式的绝佳资源:http://www.regular-expressions.info/