如何根据正则表达式创建字符串,以便在whole个字符串匹配(而不是子字符串)时返回true?

如:

test( \ee\ , "street" ) #=> returns false
test( \ee\ , "ee" ) #=> returns true!

非常感谢.

推荐答案

可以将字符串的开头与\A匹配,结尾与\Z匹配.在ruby ^$中,分别匹配行的开头和结尾:

>> "a\na" =~ /^a$/
=> 0
>> "a\na" =~ /\Aa\Z/
=> nil
>> "a\na" =~ /\Aa\na\Z/
=> 0

Ruby相关问答推荐

运行跳过的RSpec测试,如果通过则失败

Ruby:这两种混入模块方法是否等效?

Ruby - 将两个哈希与一些相似的键合并

Ruby中带和不带下划线_的方法参数有什么区别

在 Ruby 中为类添加实例变量

Ruby:通过正则表达式过滤数组?

为什么 Range 在下降时不起作用?

ruby:对两个或多个数组的对应成员求和

如何判断 Ruby 数组是否包含多个值之一?

对具有相同键的 2 个哈希属性求和

无法从同一网络上的另一台计算机访问本地 Sinatra 服务器

Ruby 输出 Unicode 字符

Ruby中的常量或类变量?

动态设置 Ruby 对象的属性

Sinatra 登录?

Ruby中的file.open、open和IO.foreach,有什么区别?

在命名包含多个单词的Ruby 时,是否应该使用破折号或下划线?

Lisp 和 Erlang 原子、Ruby 和 Scheme 符号.它们有多大用处?

使用 Liquid 标记在 Jekyll 中获取今天的日期

检索/列出 Redis 数据库中的所有键/值对