带有变量的Ruby正则表达式

时间:2014-01-09 03:41:03

标签: ruby regex

我希望有一个可以使用变量的正则表达式

现在它看起来像var=status.text[/.*#{keyword}.*is now available.*/io]

但变量会破坏正则表达式

2 个答案:

答案 0 :(得分:1)

'休息'是什么意思? 它开箱即用

[36] pry(main)> a = 1
=> 1
[37] pry(main)> /#{a}/
=> /1/

答案 1 :(得分:1)

您可以先将变量放在字符串中,然后将字符串转换为正则表达式,如下所示:

[4] pry(main)> keyword = "cat"
=> "cat"
[5] pry(main)> my_regexp = Regexp.new(".*#{keyword}.*is now available.*")
=> /.*cat.*is now available.*/