Logo UGIdotNET

Manipolare stringhe con Visual Basic .NET

Durante il primo approccio con la piattaforma .NET, in particolare con il nuovo linguaggio Visual Basic .NET probabilmente molti sviluppatori VB6 si sono domandati se esistono ancora le funzioni tradizionali (Mid,InStr,Left, ecc..) utilizzate per la manipolazione delle stringhe.
Oltre alla considerazione che nel nuovo linguaggio le stringhe sono delle vere e proprie classi (Reference Type) al contrario di VB6 dove venivano trattate come Value Type, è possibile affermare che nella maggior parte dei casi il nuovo linguaggio (oltre alle funzioni legate al vecchio ambiente conservate per compatibilità) è fornito di metodi più efficienti e completi delle funzioni VB6.
Vediamo negli esempi di codice qui sotto alcuni importanti metodi per operare su stringhe, e i relativi risultati di tali operazioni.

Dim str As String = "www.UGIDOTNET.org"
Console.WriteLine(str.Chars(4)) = U
Console.WriteLine(str.IndexOf(".", 0)) = 3
Console.WriteLine(str.LastIndexOf(".")) = 13
Console.WriteLine(str.Substring(4, 9)) = UGIDOTNET
Console.WriteLine(str.StartsWith("www"))= True
Console.WriteLine(str.EndsWith("org"))= True
Console.WriteLine(str.Insert(0, "http://")) = http://www.UGIDOTNET.org
Console.WriteLine(str.Remove(0, 3)) = .UGIDOTNET.org
Console.WriteLine(str.Length) = 17
Console.ReadLine()

La proprietà Chars restituisce il carattere corrispondente all'indice specificato (Mid con un unico valore).
Il metodo IndexOf restituisce l'indice della prima occorrenza di un carattere/stringa a partire da una posizione ed eventualmente per un numero di caratteri specificato (simile a InStr).
Il metodo LastIndexOf funziona in modo opposto al metodo IndexOf, restituendo quindi l'indice dell'ultima occorrenza di un carattere/stringa (simile a InStrRev).
Il metodo Substring restituisce una sottostringa della stringa specificata a partire da un indice ed eventualmente per un numero di caratteri specificato (simile a Mid).
Il metodo StartsWith verifica che la stringa contenga come carattere/stringa iniziale quello specificato come parametro.
Restituisce True o False a seconda dell'esito della verifica (può sostituire InStr o Mid).
Il metodo EndsWith funziona in modo opposto controllando il carattere/stringa finale.
Restituisce True o False a seconda dell'esito della verifica (può sostituire InStrRev o Mid).
Il metodo Insert inserisce, all'interno della stringa esistente, una sottostringa a partire da un indice di posizione (sostituisce operazioni con Left, Right, Mid...).
Il metodo Remove elimina una stringa/carattere da una stringa esistente a partire da un indice di posizione per uno specifico numero di caratteri (sostituisce operazioni con Left, Right, Mid...).
La proprietà Lenght restituisce il numero di caratteri che compongono la stringa (0 se ha valore blank).
Autore: Massimo Martucci
Data: 20 maggio 2003
Ultimo aggiornamento: 23 luglio 2004
Categorie: 

© 2001 User Group Italiano UGIdotNET. Tutti i diritti riservati. Note legali. - Partita IVA 01927050185