Code-Beispiel
Sehr schneller Replace-Funktion [Ohne Reset-Overhead]
Lizenz: | Erster Autor: | Letzte Bearbeitung: |
BSD-Lizenz | ThePuppetMaster | 08.04.2012 |
Diese Replace-Funktion nutzt eine eigene Suche, so dass nicht bei der Nutzung von InStr ständig von vorne gestartet werden muss. Die Rücksetzung erfolgt bei dieser Funktion auf ein Minimum, um das zu suchende Element mit einschliessen zu können.
Dadurch sind bei langen und intensiven Texten im Vergleich zu InStr-Replace-Funktionen enorme Zeitgewinne möglich.
Function Replace(ByVal V_Data As String, ByVal V_Expression As String, ByVal V_ReplaceBy As String) As String
Dim X As Long
Dim SL As Long
Dim D as String
D = V_Data
SL = Len(V_Expression)
X = 0
Do
X = X + 1
If X > Len(D) - SL + 1 Then Exit Do
If Mid(D, X, SL) = V_Expression Then
D = Mid(D, 1, X - 1) & V_ReplaceBy & Mid(D, X + SL)
X = X + (SL - 1)
If X < 0 then X = 0
End If
Loop
Return D
End Function
Zusätzliche Informationen und Funktionen | |||||||
---|---|---|---|---|---|---|---|
|
|