2010-07-25 20 views
5

W PHP należy użyć preg_quote(), aby uciec od wszystkich znaków w ciągu znaków, które mają szczególne znaczenie w wyrażeniu regularnym, umożliwiając (na przykład) preg_match() wyszukiwanie tych znaków specjalnych.Co to jest odpowiednik ruby ​​preg_quote()?

Jaki jest odpowiednik w Ruby poniższego kodu?

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

Odpowiedz

6

Chcesz Regexp.escape.

str = "[...]" 
re = /#{Regexp.escape(str)}/ 
"la[...]la[...]la".gsub(re,"") #=> "lalala" 
Powiązane problemy