Replace-Funktion

Gibt eine Zeichenfolge zurück, in der eine angegebene Teilzeichenfolge so oft wie angegeben durch eine andere Teilzeichenfolgen ersetzt wurde.

Syntax

Replace(expression, find, replacewith[, start[, count[, compare]]])

Argumente:

  • Expression: Erforderlich. Zeichenfolgenausdruck mit der zu ersetzenden Teilzeichenfolge.
  • Find: Erforderlich. Zu suchende Teilzeichenfolge.
  • Replacewith: Erforderlich. Ersetzungsteilzeichenfolge.
  • Start: Optional. Position innerhalb des Ausdrucks, an der die Suche nach der Teilzeichenfolge beginnen soll. Wird diese Option ausgelassen, wird "1" verwendet. Muss in Verbindung mit "count" verwendet werden.
  • Count: Optional. Anzahl der auszuführenden Ersetzungen für Teilzeichenfolgen. Wird dieser Wert ausgelassen, ist der Standardwert "-1", d.h., alle möglichen Ersetzungen werden vorgenommen. Muss in Verbindung mit "start" verwendet werden.
  • Compare: Optional. Numerischer Wert, der die Art des Vergleichs angibt, der bei der Auswertung von Teilzeichenfolgen verwendet werden soll. Informationen zu Werten finden Sie im Abschnitt "Einstellungen". Wird dieser Wert ausgelassen, ist der Standardwert "0", d.h., ein binärer Vergleich wird durchgeführt.
  • Einstellungen: Das Argument "compare" kann die folgenden Werte aufweisen:

    Tabelle 11-19 Vergleichskonstanten und Beschreibungen

    Konstante Wert Beschreibung
    vbBinaryCompare 0 Binären Vergleich durchführen
    vbTextCompare 1 Textvergleich durchführen

Rückgabewert

"Replace" gibt die folgenden Werte zurück:

Tabelle 11-20 Rückgabewerte von Replace

Ausgangssituation Rückgabewerte von Replace
"Expression" hat Nulllänge Zeichenfolge mit Nulllänge ("")
"Expression" ist Null Fehler
"Find" hat Nulllänge Kopie des Ausdrucks
"Replacewith" hat Nulllänge Kopie des Ausdrucks mit allen Vorkommen der Suche entfernt
start > Len (Ausdruck) Zeichenfolge mit Nulllänge
"Count" ist 0 Kopie des Ausdrucks

Anmerkungen

Der Rückgabewert der Replace-Funktion ist eine Zeichenfolge mit getätigten Ersetzungen, die an der mit "start" angegebenen Position beginnt und am Ende der Ausdruckszeichenfolge endet. Es handelt sich nicht um eine Kopie der ursprünglichen Zeichenfolge von Anfang bis Ende.

Im folgenden Beispiel wird die Replace-Funktion verwendet, um eine Zeichenfolge zurückzugeben:

Beispiel 1:

' A binary comparison starting at the beginning of the string. 
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y")
' Output: " XXYXXPXXY".

Beispiel 2:

' A textual comparison starting at position 4.
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y", 4)
'Output: XXPXXY

Beispiel 3:

Dim MyString
MyString = Replace("XXpXXPXXp", "X", "Y", 1, 4)
'Output: YYpYYPXXp

Beispiel 4:

Dim MyString
MyString = Replace("XxpXxPXxp", "X", "Y", 1, -1, 0)
'Output: YxpYxPYxp
MyString = Replace("XxpXxPXxp", "X", "Y", 1, -1, 1)
'Output: YYpYYPYYp

Beispiel 5:

Dim MyString2
MyString2 = Replace("XXpXXPXXp", "p", "")
' Output: "XXXXPXX".

Beispiel 6:

Dim MyString4
MyString4 = Replace("XXpXXPXXp", "p", "Y", 1, 0)
' Output: "XXpXXPXXp".

Beispiel 7:

Dim MyString5
MyString5 = Replace("XXpXXPXXp", "", "Y")
'Output: "XXpXXPXXp".