Der FoxPro-Kompatible Skriptinterpreter
🔎
Newsletter
Der FoxPro-Kompatible Skriptinterpreter

umatch

umatch(Pattern AS String?, Subject AS String?, [OutMatches AS Any@, Flags AS Integer, OutContinue AS Any@]) AS Logical


Durchsucht eine Zeichenkette mit einem regulären Ausdruck.

Parameter Pattern

Der anzuwendene reguläre Ausdruck.

Parameter Subject

Die zu durchsuchende Zeichenkette.

Parameter OutMatches

Ausgabearray mit ein oder mehreren Zeilen. Die erste Zeile enthält den gesamten Trefferbereich. Die weiteren Zeilen enthalten die getroffenen Unterbereiche (Submatches).

Parameter Flags

Die folgenden Parameter können zum Steuern der Funktion verwendet werden (Additive)

Flag
Funktion
1 Ignoriert bei der Verarbeitung des Musters die Groß -und Kleinschreibung des Subjektes
2 Der . in einem Muster trifft auch auf Zeilenumbrüche zu
4 Die Zeichen ^$ erkennen Zeilenumbrüche. Ansonsten nur Anfang und Ende der Zeichenkette

Parameter OutContinue

Enthält nach einem Treffer den Rest der Zeichenkette hinter dem Suchergebnis.

Rückgabewert

Wenn die Suche erfolgreich war, liefert die Funktion .T. zurück.

Beispiele

Das folgende Beispiel zeigt wie das Subject sowohl als Eingabe als auch als Ausgabe verwendet werden kann, um eine Zeichenkette mehrfach bis zum Ende auf das gleiche Muster hin zu untersuchen.

  1
  2
  3
  4
  5
  6
  7
  8
  9
* Suche so lange nach Leerzeichen bis keine mehr gefunden wurden
LOCAL subject, matches[1], anz
anz = 0
subject = "Matthias jagt im komplett veralteten Citroén C1 quer durch Hamburg"
DO WHILE umatch("\s+", subject, @matches, 0, @subject)
  ? "Leerzeichen gefunden"
  anz = anz + 1
ENDDO
"Insgesamt", anz, "Leerzeichen gefunden"

Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Leerzeichen gefunden
Insgesamt 9 Leerzeichen gefunden