Buchempfehlung
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie
Umfassend, aber leicht verständlich führt dieses Buch in die Programmierung von ATMEL AVR Mikrocontrollern ein. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Code-Beispiel

Code-Beispiele » Stringfunktionen

Sehr schneller Replace-Funktion [Ohne Reset-Overhead]

Lizenz:Erster Autor:Letzte Bearbeitung:
BSD-LizenzMitgliedThePuppetMaster 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
  • Das Code-Beispiel wurde am 25.10.2007 von MitgliedThePuppetMaster angelegt.
  • Die aktuellste Version wurde am 08.04.2012 von Mitgliedtheta gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen