2011-05-18 93 views
8
string inputString = "1/10 EP Sp'arrowha?wk XT R;TR 2.4GHz Red"; 
//Characters Collection: (';', '\', '/', ':', '*', '?', ' " ', '<', '>', '|', '&', ''') 
string outputString = "1 10 EP Sp arrowha wk XT R TR 2.4GHz Red"; 
+0

¿Está tratando de hacer algún tipo de escape para SQL por casualidad? – Qtax

Respuesta

19

los datos acerca de la siguiente código:

  • No está probado
  • probablemente en mal estado el carácter escape en new Regex(...);
  • Yo en realidad no sé C#, pero no puedo Google para "C# string replace regex" y land on MSDN

    Regex re = new Regex("[;\\/:*?\"<>|&']"); 
    string outputString = re.Replace(inputString, " "); 
    

Aquí está el código correcto:

string inputString = "1/10 EP Sp'arrowha?wk XT R;TR 2.4GHz R\\ed"; 
Regex re = new Regex("[;\\\\/:*?\"<>|&']"); 
string outputString = re.Replace(inputString, " "); 
// outputString is "1 10 EP Sp arrowha wk XT R TR 2.4GHz R ed" 

Demostración: http://ideone.com/hrKdJ

También: http://www.regular-expressions.info/

+1

Mueve el ''' dentro de la clase char, también usaría un '+', como '" [; \\ /: *? \ "<> | &'] +" ' – Qtax

+0

@Matt Ball, entiendo que probablemente estés molesto porque el OP no buscó primero en Google, pero eso no significa que tengas que ser malo o sarcástico. – Xaisoft

+0

@Xaisoft que se suponía que era una revelación, ninguna intención negativa en absoluto. Lo he reformulado; por favor, avíseme si todavía sale mal. –

2
string outputString = Regex.Replace(inputString,"[;\/:*?""<>|&']",String.Empty) 
Cuestiones relacionadas