Qualcuno può darmi un esempio in c# per rimuovere una certa sequenza di caratteri dalla parte finale di una stringa. Ma solo dalla fine e non se allìinterno della stringa.
grazie
stefy
Qualcuno può darmi un esempio in c# per rimuovere una certa sequenza di caratteri dalla parte finale di una stringa. Ma solo dalla fine e non se allìinterno della stringa.
grazie
stefy
Ciao!
per rimuovere dei caratteri dalla parte finale di una stringa puoi fare come in questo esempio:
il risultato sarà che la stringa ciao conterra solamente "ciao".codice:string ciao = "ciao stefy"; ciao = ciao.Substring(0, ciao.IndexOf("", 6));
Al posto di quel 5 metti quello che vuoi e il gioco è fatto..
GRAZIE PER LA RISPOSTAOriginariamente inviato da srv_men_012
Ciao!
per rimuovere dei caratteri dalla parte finale di una stringa puoi fare come in questo esempio:
il risultato sarà che la stringa ciao conterra solamente "ciao".codice:string ciao = "ciao stefy"; ciao = ciao.Substring(0, ciao.IndexOf("", 6));
Al posto di quel 5 metti quello che vuoi e il gioco è fatto..
ma con il tuo esempio io rimuovo sempre gli ultimi 6 caratterei, io vorreri uno script che rimuova una sequenza di caratteri solo se presente in una stringa alla sua fine.
quindy caratterei da rimuove "123"
es. 1) stringa input "aaaaaaaaaa123" deve diventare "aaaaaaaaaa"
es 2) stringa input "aaaaaaaaaa123a" NESSUN INTERVENTO
es 3) stringa input "aaaaaaaaaaBBB" NESSUN INTERVENTO
Ciao,Originariamente inviato da stefy75
io vorreri uno script che rimuova una sequenza di caratteri solo se presente in una stringa alla sua fine.
......
la classe string offre un metodo EndWith
codice:protected string tronca_stringa(string da_cancellare, string stringa) { if (stringa.Substring(stringa.Length - da_cancellare.Length) == da_cancellare) { stringa = stringa.Substring(0, stringa.IndexOf("", stringa.Length - da_cancellare.Length)); return stringa; } else { return stringa; } }
un modo, a mio avviso, elegante per farlo è tramite le regular expression
codice:string sres = System.Text.RegularExpressions.Regex.Replace("aaaaaaaaaa123", "123$", "");
Grazie questo è okOriginariamente inviato da srv_men_012
codice:protected string tronca_stringa(string da_cancellare, string stringa) { if (stringa.Substring(stringa.Length - da_cancellare.Length) == da_cancellare) { stringa = stringa.Substring(0, stringa.IndexOf("", stringa.Length - da_cancellare.Length)); return stringa; } else { return stringa; } }
Le Regular Expression fanno al tuo caso![]()
~Il nome di una variabile deve riflettere il suo scopo e non il suo tipo di dati, NET Framework.
Potevi tranquillamente utilizzare la TrimEnd() della classe String.
Esempio
![]()