ruby-on-rails – 如何确定是否有一个匹配在rails中返回true或false? - 代码日志

ruby-on-rails – 如何确定是否有一个匹配在rails中返回true或false?

我想创建一个为电子邮件处理返回true或false的测试。

现在,如果电子邮件地址以r开头,那么它是真的,否则它是假的。这将有助于我们的服务器忽略大量的垃圾邮件。

例子:

r+kldslkadslkadslk@site.com .. true
r+123123312@site.com .. true
vigraaaa@site.com .. FALSE

使用Rails / ruby​​ / regex来处理这个问题最有效的方法是什么?

谢谢

目标

是轨道/红宝石的一个班轮:

ABORT if XXXXX == 0
这将匹配:

/^r\+.*@site.com$/

例子:

>> 'r+kldslkadslkadslk@site.com' =~ /^r\+.*@site.com$/ #=> 0
>> 'vigraaaa@site.com' =~ /^r\+.*@site.com$/ #=> nil

由于所有不是零或虚假的都不是真实的,所以你可以在这种情况下使用这个正则表达式。如果你真的想要一个布尔值,你可以使用!成语:

>> !!('vigraaaa@site.com' =~ /^r\+.*@site.com$/) #=> false
>> !!('r+kldslkadslkadslk@site.com' =~ /^r\+.*@site.com$/) #=> true
http://stackoverflow.com/questions/7365492/how-to-determine-if-there-is-a-match-an-return-true-or-false-in-rails

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:ruby-on-rails – 如何确定是否有一个匹配在rails中返回true或false?