字符串比较,例如" abcDEF" ==" * DEF"

时间:2016-05-06 16:02:33

标签: ruby-on-rails ruby

我正在使用rails应用程序,我需要进行比较,如:

url == "http://localhost:3000/admin/admin_login"

我想知道有没有比较方法:

url == "*/admin/admin_login"

3 个答案:

答案 0 :(得分:5)

您可以使用String#include?

url = "http://localhost:3000/admin/admin_login"
url.include?("/admin/admin_login")
=> true

其他方式是使用String#end_with?

url.end_with?("/admin/admin_login")
=> true

如果您想检查url是否以此参数结尾,则此方法有效。

答案 1 :(得分:5)

您可以使用正则表达式。

irb(main):001:0> url = "http://localhost:3000/admin/admin_login"
=> "http://localhost:3000/admin/admin_login"
irb(main):002:0> url =~ /admin\/admin_login\z/
=> 22
irb(main):003:0> url =~ /foo\/something_else\z/
=> nil
irb(main):004:0> "http://localhost:3000/admin/admin_login/bar" =~ /admin\/admin_login\z/
=> nil

答案 2 :(得分:0)

你可以使用include吗?或[]

值=" HTTP://本地主机:3000 /管理/ admin_login"

value["/admin/admin_login"]
 => "/admin/admin_login" 
value["/admin/admin_login1"]
 => nil 
value[/\/admin\/admin_login/]
 => "/admin/admin_login" 
value.include?("/admin/admin_login")
 => true