Per la rimozione di parte finale è io uso il codiceEsiste un modo migliore per rimuovere una parte finale della stringa in .NET?
str.substring(0,str.length -2)
C'è un modo migliore? In particolare non mi piace usare str.length.
Edit ho voluto la questione di essere il più breve e semplice possibile e ho supposto che ho appena trascurato qualche metodo String. Cerco di essere più preciso.
Ho bisogno di rimuovere un determinato numero di caratteri dalla fine di una stringa. Non voglio preoccuparmi di quali sono i personaggi e non voglio introdurre il rischio di rimuovere più personaggi.
Se il numero è maggiore della lunghezza della stringa, è presente un'eccezione (la stringa deve essere convalidata in precedenza).
Non ho il problema in particolare con la lunghezza, ma con riferimento a una variabile due volte (immagina una funzione anziché una variabile). Inoltre non mi piace la necessità di sottrazione, ma è solo una preferenza personale.
VB.NET soution
La domanda è Taged vb.net per cui v'è un codice vb.net (dovrebbe essere in un modulo):
<System.Runtime.CompilerServices.Extension> _
Public Shared Function RemoveFromEnd(stringValue As String, removedCharacters As Integer) As String
Return stringValue.Substring(0, stringValue.Length - removedCharacters)
End Function
cosa intendi per "parte finale"? – dtsg
Per rimuovere gli ultimi x caratteri di una stringa è necessario conoscerne la lunghezza. Se semplicemente non ti piace vedere questo nel tuo codice, allora potresti scrivere un metodo di estensione per nascondere il calcolo. –
@Duane: Intendo rimuovere gli ultimi x caratteri. – IvanH