Freitag, 29. November 2013

TM-SmartString: Left, Right, Mid

Mit diesem Beitrag wird das Klassenmodul TM-SmartString um drei der wesentlichsten Funktionen für die Verarbeitung von Strings erweitert: Left, Right und Mid.

Eigenschaft: Left
Diese Eigenschaft gibt die ersten x Zeichen des enthaltenen Textes zurück.

Implementierung
Die Implementierung erfolgt mit folgendem Code:
1:  Public Property Get Left(ByVal Length As Long) As String  
2:    Left = VBA.Left$(m_String, Length)  
3:  End Property  
In der zweiten Zeile wird die Funktion Left$ verwendet, um das Ergebnis zu ermitteln. Der Name der Funktion Left$ wird zusätzlich mit dem Namen der zu verwendenden Bibliothek qualifiziert; in diesem Fall "VBA". So wird sichergestellt, dass die Funktion Left$ aus der Bibliothek VBA verwendet wird.

Bisheriger Code
Bisher wurde folgender Code für die Ermittlung der ersten x Zeichen eines Strings verwendet:
1:  Dim myString As String    
2:  myString = "Hello World"  
3:  MsgBox Left$(myString, 5)  
In der dritten Zeile wird die Funktion Left$ aufgerufen. Dieser wird als Parameter der Name der String-Variable und die Anzahl der Zeichen übergeben.

Künftiger Code
Bei Verwendung der Klasse TM_SmartString sieht der Code wie folgt aus:
1:  Dim myString As TM_SmartString  
2:  Set myString = New TM_SmartString  
3:  myString = "Hello World"  
4:  MsgBox myString.Left(5)  
In der vierten Zeile wird die Eigenschaft Left abgerufen. Als Parameter wird die Anzahl der Zeichen übergeben.

Eigenschaft: Right
Diese Eigenschaft gibt die letzten x Zeichen des enthaltenen Textes zurück.

Implementierung
Die Implementierung erfolgt mit folgendem Code:
1:  Public Property Get Right(ByVal Length As Long) As String  
2:    Right = VBA.Right$(m_String, Length)  
3:  End Property  
In der zweiten Zeile wird die Funktion Right$ verwendet, um das Ergebnis zu ermitteln. Der Name der Funktion Right$ wird zusätzlich mit dem Namen der zu verwendenden Bibliothek qualifiziert; in diesem Fall "VBA". So wird sichergestellt, dass die Funktion Right$ aus der Bibliothek VBA verwendet wird.

Bisheriger Code
Bisher wurde folgender Code für die Ermittlung der letzten x Zeichen eines Strings verwendet:
1:  Dim myString As String  
2:  myString = "Hello World"    
3:  MsgBox Right$(myString, 5)  
In der dritten Zeile wird die Funktion Right$ aufgerufen. Dieser wird als Parameter Name der String-Variable und die Anzahl der Zeichen übergeben.

Künftiger Code
Bei Verwendung der Klasse TM_SmartString sieht der Code wie folgt aus:
1:  Dim myString As TM_SmartString  
2:  Set myString = New TM_SmartString  
3:  myString = "Hello World"  
4:  MsgBox myString.Right(5)  
In der vierten Zeile wird die Eigenschaft Right abgerufen. Als Parameter wird die Anzahl der Zeichen übergeben.

Eigenschaft: Mid
Diese Eigenschaft gibt aus dem enthaltenen Text eine bestimmte Anzahl von Zeichen ab einer bestimmten Position zurück.

Implementierung
Die Implementierung erfolgt mit folgendem Code:
1:  Public Property Get Mid(ByVal Start As Long, _  
2:                 Optional ByVal Length As Variant) As String  
3:    If IsMissing(Length) Then  
4:      Mid = VBA.Mid$(m_String, Start)  
5:    Else  
6:      Mid = VBA.Mid$(m_String, Start, Length)  
7:    End If  
8:  End Property  
Als Parameter werden die Startposition und die Länge erwartet. Die Länge ist optional. Wenn die Länge fehlt, werden alle Zeichen ab der Startposition bis zum Ende zurück geliefert.
Zur Ermittlung des Ergebnisses wird die Funktion Mid$ verwendet. Der Name der Funktion Mid$ wird zusätzlich mit dem Namen der zu verwendenden Bibliothek qualifiziert; in diesem Fall "VBA". So wird sichergestellt, dass die Funktion Mid$ aus der Bibliothek VBA verwendet wird.

Bisheriger Code
Bisher wurde folgender Code verwendet, um einen Teil aus einem String zurückzugeben:
1:  Dim myString As String  
2:  myString = "Hello my World"  
3:  MsgBox Mid$(myString, 7, 2)  
In der dritten Zeile wird die Funktion Mid$ aufgerufen. Dieser werden als Parameter der String, die Startposition und die Länge übergeben.

Künftiger Code
Bei Verwendung der Klasse TM_SmartString sieht der Code wie folgt aus:
1:  Dim myString As TM_SmartString  
2:  Set myString = New TM_SmartString  
3:  myString = "Hello my World"  
4:  MsgBox myString.Mid(7)  
In der vierte Zeile wird die Eigenschaft Mid verwendet. Diese benötigt als Parameter die Startposition und optional die Länge. Auf dies Angabe der Länge wurde in diesem Beispiel verzichtet.


Die nächsten Schritte sind gemacht. Das Klassenmodul enthält jetzt drei der wesentlichsten Funktionen zur Verarbeitung von Strings. Die nächsten Erweiterungen des Klassenmoduls sind schon fast fertig.

Die neue Version 1.04.02 steht (wie immer) auf meiner Webseite zum Download bereit.

Keine Kommentare: