Что такое Ruby-эквивалент preg_quote ()? - PullRequest
5 голосов
/ 25 июля 2010

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

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

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

1 Ответ

6 голосов
/ 25 июля 2010

Вы хотите Regexp.escape.

str = "[...]"
re = /#{Regexp.escape(str)}/
"la[...]la[...]la".gsub(re,"") #=> "lalala"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...