/ / Regex per rimuovere punti dalla stringa - c #, regex

Regex per rimuovere punti da string - c #, regex

ho questo

regex Regex.Replace(listing.Company, @"[^A-Za-z0-9_.~]+", "-");

listing.Company è una stringa, funziona ma quando una stringa ha punti non li rimuove.

Mi potrebbe aiutare

risposte:

2 per risposta № 1

Nella tua espressione regolare, hai . nella tua esclusione, che farà sì che venga ignorato da Regex.Replace. Inoltre, il tuo regex non fa nulla per convertire la stringa di input in lettere minuscole. Puoi farlo in seguito, ma farlo prima che la tua sostituzione renda più semplice il tuo schema.

Prova questo metodo:

var output = Regex.Replace(listing.Company.ToLower(), "[^a-z0-9_]+", "-");

1 per risposta № 2

provare

Regex.Replace(listing.Company.ToLower(), @"[^a-z0-9_]+", "-");

stai escludendo . che è per punto. Inoltre, se lo si desidera in lettere minuscole, è necessario prima convertire la stringa in lettere minuscole.


0 per risposta № 3

Forse stai cercando qualcosa di simile a questo:

string res = Regex.Replace(listing.Company, @"[W+.~]", "-");

Qui il motore regex cercherà qualsiasi carattere diverso da A-Z, a-z, underscore insieme a dot e ~ e lo sostituirà con "-".

dimostrazione