带有字符串参数的 Ruby grep

标签 ruby regex ruby-1.9

我想将 grep 与字符串一起用作正则表达式模式。我该怎么做?

例子:

myArray.grep(/asd/i) #Works perfectly.

但我想先准备好我的声明

searchString = '/asd/i'
myArray.grep(searchString) # Fails

我怎样才能做到这一点?我需要准备一个字符串,因为这将进入搜索算法,并且查询将根据每个请求进行更改。 谢谢。

最佳答案

正则表达式支持插值,就像字符串一样:

var = "hello"
re = /#{var}/i
p re #=> /hello/i

关于带有字符串参数的 Ruby grep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10533701/

相关文章:

ruby-on-rails - Ruby/RoR - 计算数组中元素的出现次数

javascript - 与 Javascript 相比,理解 Ruby 中的方法

ruby-on-rails - 如何在单个字段上应用多个正则表达式

javascript - 为什么 String.prototype.match() 返回 null 而不是空数组?

ruby - 安装的 Ruby 1.9.3 破坏了我的程序

Ruby 1.9 const_defined? ("Timeout") 当 Timeout 不在常量列表中时返回 true

Ruby:在字符处拆分字符串,从右侧算起

java - 用于循环替换的正则表达式

java - 正则表达式在 scala 中使用 hitEnd

ruby - 是什么阻碍了您编写特定于 ruby​​ 1.9 的代码?