2011-01-19 2 views
5

Ho questo codice da ricercare in una stringa e sostituire un testo con altro testo:ignora maiuscole e minuscole in regex.replace?

Regex regexText = new Regex(textToReplace); 
retval = regexText.Replace(retval, Newtext); 

textToReplace possono essere "benvenuto" o "client" o altro.

Voglio ignorare la causa per textToReplace in modo che "benvenuto" e "Benvenuto" corrispondano entrambi.

Come posso fare questo?

risposta

16

Si può provare:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase); 
13

È sufficiente passare l'opzione RegexOptions.IgnoreCase in questo modo:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase); 
retval = regexText.Replace(retval, Newtext); 

O, se si preferisce, è possibile passare l'opzione direttamente al Replace method:

retval = Regex.Replace(retval, textToReplace, Newtext, RegexOptions.IgnoreCase); 

un elenco delle opzioni disponibili si è possibile impostare regex è disponibile allo RegexOptions documentation page.

+0

Siamo spiacenti, si è stato :) così +1 al tuo post. –

1

C'è un Regex.Replace overload con RegexOptions. Queste opzioni includono un valore IgnoreCase.