Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    89

    C# rimuovere una determinata sequenza di caratteri dalla fine di una stringa

    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

  2. #2
    Ciao!

    per rimuovere dei caratteri dalla parte finale di una stringa puoi fare come in questo esempio:

    codice:
    string ciao = "ciao stefy";
    ciao = ciao.Substring(0, ciao.IndexOf("", 6));
    il risultato sarà che la stringa ciao conterra solamente "ciao".
    Al posto di quel 5 metti quello che vuoi e il gioco è fatto..

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    89
    Originariamente inviato da srv_men_012
    Ciao!

    per rimuovere dei caratteri dalla parte finale di una stringa puoi fare come in questo esempio:

    codice:
    string ciao = "ciao stefy";
    ciao = ciao.Substring(0, ciao.IndexOf("", 6));
    il risultato sarà che la stringa ciao conterra solamente "ciao".
    Al posto di quel 5 metti quello che vuoi e il gioco è fatto..
    GRAZIE PER LA RISPOSTA
    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

  4. #4
    Originariamente inviato da stefy75
    io vorreri uno script che rimuova una sequenza di caratteri solo se presente in una stringa alla sua fine.
    ......
    Ciao,
    la classe string offre un metodo EndWith

  5. #5
    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;
          }
    }

  6. #6
    un modo, a mio avviso, elegante per farlo è tramite le regular expression

    codice:
      string sres = System.Text.RegularExpressions.Regex.Replace("aaaaaaaaaa123", "123$", "");

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    89
    Originariamente 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;
          }
    }
    Grazie questo è ok

  8. #8
    Utente di HTML.it L'avatar di dwb
    Registrato dal
    Mar 2001
    residenza
    My IDE! :)
    Messaggi
    2,908
    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.

  9. #9
    Potevi tranquillamente utilizzare la TrimEnd() della classe String.

    Esempio


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.