2012-02-10 36 views
5

¿Cuál es el equivalente de PHP preg_quote?¿Cuál es el equivalente de la preg_quote de PHP?

Esto es por lo que yo he conseguido para la creación de un método que extrae el texto de una cadena:

public static string f_get_string_between(string text, string start, string end) 
    { 
     //both these attempts below throw an unrecognized escape sequence error 
     //start = "\Q"+start+"\E"; 
     //end = "\Q"+end+"\E"; 

     Regex regex = new Regex(start + "(.*?)" + end); 
     var v = regex.Match(text); 
     text = v.Groups[1].ToString(); 
     return text; 
    } 

Respuesta

7
+0

Regex.Escape está cerca, pero parece comportarse ligeramente diferente en ciertos escenarios. En particular, no escapa "]" caracteres que pueden o no ser un problema. –

0

No hay reemplazo directo para preg_quote en C#, pero se podía escribir su propia función de hacer eso . Del manual de PHP, los caracteres que son escapados por la función son: . \ + * ? [^] $ () { } = ! < > | : - por lo que simplemente escribiría una función que toma una cadena y escapa de cualquiera de estos caracteres.

Cuestiones relacionadas