2014-01-09 110 views
-1

我想有一個正則表達式與變量在它Ruby的正則表達式與變量

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

的作品,但變量打破了正則表達式

+1

你能否提供更多的信息,比如什麼「休息「是指? – DGM

+0

它不工作,當我使用變量,但如果代碼看起來像var = status.text [/.* randomword。*現在可用。*/io],它將工作 – user3175928

+0

是關鍵字分配?是來自用戶輸入嗎?有可能是一個'\ n'的值...確保關鍵字的值是正確的 – DGM

回答

1

你是什麼意思通過'休息'? 它開箱

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

它不工作,當我把變量在正則表達式 – user3175928

+0

它確實。你的錯誤信息是什麼? – Bartosz

1

的你可以把變量中的字符串,然後再轉換爲字符串的正則表達式如下:

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