我总是这样做来测试Ruby中的字符串相等性:

if mystring.eql?(yourstring)
 puts "same"
else
 puts "different"
end

在不测试对象相等性的情况下,这是正确的方法吗?

我正在寻找基于内容测试字符串的最简洁的方法.

With the parentheses and question mark, this seems a little clunky.

推荐答案

根据http://www.techotopia.com/index.php/Ruby_String_Concatenation_and_Comparison

要么

mystring == yourstring

mystring.eql? yourstring

它们是等价的.

Ruby相关问答推荐

Regex:仅捕获Ruby中匹配的替代方案

当bsearch将数组中的第一个元素与2个值匹配时,它返回nil.为什么?

如何在 rspec 中使用 `eq` 匹配器和 `hash_include` 匹配器来获取哈希数组

ruby 中的魔术注释(#Encoding: utf-8)是如何工作的?

有没有一种简单的方法可以在 Ruby 中获取图像尺寸?

由模块中定义的另一个覆盖方法

使用 Ruby 将文件从一个目录复制到另一个目录

将 ruby​​ hash .default 设置为列表

Rails:Date.today 是 UTC 吗?

如何引用全局变量和类变量?

group_by 在 rails by 2 或更多属性

在 ruby​​ 异常中捕获行号

Ruby中的每个块都可以有一行吗?

如何在 Ruby 符号中转义破折号-?

如何在 Ruby 中取消定义类?

错误数量的参数(1 代表 0)在 Ruby 中是什么意思?

Ruby中的urldecode?

Ruby哈希中的条件键/值

在 Ruby 中使用元组?

Ruby:如何计算一个字符串在另一个字符串中出现的次数?