Datatype String
Het String datatype vertegenwoordigt reeksen van letters en cijfers, waar men met cijfers in
principe geen wiskundige bewerkingen beoogt. VB.net laat diverse stringmanipulaties toe, waarvan enkele handige
hieronder besproken worden.
Public Sub StringMan()
Dim mijnEersteString As String = ""
Dim mijnTweedeString As String = ""
Dim mijnDerdeString As String = ""
Dim mijnVierdeString As String = ""
Dim mijnVijfdeString As String = ""
Dim mijnZesdeString As String = ""
Dim mijnZevendeString As String = ""
Dim mijnAchtsteString As String = ""
Dim mijnNegendeString As String = ""
De Format-methode:
mijnEersteString = String.Format("{0}!", "Een allebeste goede morgen")
Debug.Print("Mijn eerste string:" & mijnEersteString)
'Retourneert : Mijn eerste string:Een allebeste goede morgen!
'Gebruikmakend van de Format methode en de accoladetekens kan men zogenaamde substitutie verwezenlijken
'Meedere substituties zijn mogelijk, zoals bijvoorbeeld
mijnTweedeString = String.Format("Mijn TV van merk {0} Type {1} Bouwjaar {2}", "Sony", "Bravia", 2012)
Debug.Print("Mijn tweede string:" & mijnTweedeString)
'Retourneert : Mijn tweede string:Mijn TV van merk Sony Type Bravia Bouwjaar 2012
'De format methode kan met C duiding ook gebruikt worden voor munt aanduiding overeenstemmend met de plaatselijke instelling in Windows
mijnDerdeString = String.Format("{0:C}", 100.75)
Debug.Print("Mijn derde string:" & mijnDerdeString)
'Retourneert : Mijn derde string: 100,75
'De format methode met N duiding geeft correcte punctuatie van een getal
mijnVierdeString = String.Format("{0:N}", 1234567890)
Debug.Print("Mijn vierde string:" & mijnVierdeString)
'Retourneert = Mijn vierde string:1.234.567.890,00
'De format methode met P duiding geeft een getal in procenten terug
mijnVijfdeString = String.Format("{0:P}", 0.25)
Debug.Print("Mijn vijfde string:" & mijnVijfdeString)
'Retourneert : Mijn vijfde string:25,00%
'Met de format methode kan men bijvoorbeeld ook een telefoon of GSM nummer in een correctie vorm weergeven
'Nemen wij bijvoorbeeld een GSM nummer door de gebruiker ingegeven als 0475 23 34 89
Dim strGSM = "0475 23 34 89 "
'Met de Trim functie verwijderen wij alle eerste en laatste spaties
strGSM = Trim(strGSM)
'Vervolgens verwijderen spaties binnen het nummer
strGSM = strGSM.Replace(" ", "")
'controleren indien 10 cijfers opgegeven werden, dan de eerste nul verwijderen en dan getal laten vooraf gaan door 32
If strGSM.Length = 10 AndAlso Left(strGSM, 1) = "0" Then
strGSM = "32" & Right(strGSM, 9)
Dim lng As Long = CLng(strGSM)
mijnZesdeString = String.Format("GSM-nr = +{0: ##### ## ## ##}", lng)
Debug.Print("Mijn zesde string:" & mijnZesdeString)
'Retourneert : Mijn zesde string:GSM-nr = + 32475 23 34 89
End If
'Het gebeurt dat men een string wijzigt in een lus
For intTel As Integer = 0 To 100
mijnZevendeString += "--" & intTel.ToString
Next
Debug.Print("Mijn zevende string:" & mijnZevendeString)
'Retourneert : Mijn zevende string:--0--1--2--3--4--5--6--7--8--9--10--11 enz
'Bovenstaande werkt maar is onefficient iedere lus moet de variabele in het geheugen opgehaald en vervangen worden
'Beter is om in dergelijke gevallen gebruik te maken van het StringBuilder-object
Dim mijnBuilder As New System.Text.StringBuilder
For intTel As Integer = 0 To 100
mijnBuilder.Append("--")
mijnBuilder.Append(intTel)
Next
mijnAchtsteString = mijnBuilder.ToString
Debug.Print("Mijn achtste string:" & mijnAchtsteString)
'Retourneert : Mijn achtste string:--0--1--2--3--4--5--6--7--8--9--10--11 enz
'Met de Substring-methode kan mijn een vooraf bepaald gedeelte van een string afzonderen
mijnNegendeString = "Uit deze string wordt een bepaald gedeelte afgezonderd"
mijnNegendeString = mijnNegendeString.Substring(9, 6)
Debug.Print("Mijn negende string:" & mijnNegendeString)
'Retourneert : Mijn negende string:string
End Sub
|