2009-09-04 12 views
5

ho stringa come questa:Togliere un po 'di una stringa prima di una parola

G:\Projects\TestApp\TestWeb\Files\Upload\file.jpg 

Come faccio a rimuovere tutto il testo prima di "file" (G: \ Projects \ TestApp \ testweb)? La stringa prima che i file possano essere modificati, quindi non posso contare i caratteri e rimuoverli dopo 20 caratteri.

Grazie per il vostro aiuto :)

+0

Vuoi dire che il percorso prima di \ file varia? – Mayo

risposta

19

provare questo

string s = oldString.Substring(oldString.IndexOf("Files")); 

Grazie per il commento di Meta-Knight,

se un altro "File" può essere in parte all'inizio della stringa, allora meglio sarebbe be ..

string s = oldString.Substring(oldString.LastIndexOf("Files")); 
+0

Grazie, lo ha fatto :) –

+0

Questo è certamente valido, ma vorrei aggiungere che vuoi trovare una parte unica della stringa che vuoi mantenere (g: \ uploadfiles \ john \ Files \ Upload \ fallirebbe) . Potresti considerare anche .jpg o \ Files \ Upload \. Inoltre, suggerisci .tolower() in modo da non essere influenzato dalle differenze tra maiuscole e minuscole. – Mayo

+1

Utilizzerei invece LastIndexOf. Ridurrebbe al minimo il rischio di errori. –

Problemi correlati