2010-07-25 4 views
5

В PHP вам нужно использовать preg_quote(), чтобы избежать всех символов в строке, которые имеют определенное значение в регулярном выражении, чтобы разрешить (например) preg_match() для поиска этих специальных символов.Что такое Ruby-эквивалент preg_quote()?

Что такое эквивалент в Ruby следующего кода?

// The content of this variable is obtained from user input, in example. 
$search = "$var = 100"; 
if (preg_match('/' . preg_quote($search, '/') . ";/i")) { 
    // … 
} 

ответ

6

Regexp.escape.

str = "[...]" 
re = /#{Regexp.escape(str)}/ 
"la[...]la[...]la".gsub(re,"") #=> "lalala" 
Смежные вопросы