Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Match regex
|
Match regex ( Muster ; spezString ; Start {; Pos_gefunden ; Länge_gefunden}{; *} ) -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
Muster | Text |
![]() |
Regulärer Ausdruck | |||||
spezString | Text |
![]() |
String, in dem die Suche ausgeführt wird | |||||
Start | Lange Ganzzahl |
![]() |
Position im String, wo die Suche beginnt | |||||
Pos_gefunden | Array Lange Ganzzahl, Variable Lange Ganzzahl |
![]() |
Position des Vorkommens | |||||
Länge_gefunden | Array Lange Ganzzahl, Variable Lange Ganzzahl |
![]() |
Länge des Vorkommens | |||||
* | Operator |
![]() |
Mit *: Nur Suche an der angegebenen Position | |||||
Funktionsergebnis | Boolean |
![]() |
True = Suche hat 1 Vorkommen gefunden; sonst False. | |||||
Match regex ( Muster ; Zeichenkette ) -> Funktionsergebnis | ||||||||
Parameter | Typ | Beschreibung | ||||||
Muster | Text |
![]() |
regulärer Ausdruck (komplette Übereinstimmung) | |||||
Zeichenkette | Text |
![]() |
Zeichenkette, in der eine Suche ausgeführt wird | |||||
Funktionsergebnis | Boolean |
![]() |
True = Suche hat ein Vorkommen gefunden, sonst False | |||||
Die Funktion Match regex prüft, ob eine Zeichenkette mit den analysierenden Regeln einer Meta-Sprache, genannt „regular expression“ oder „rational expression“, übereinstimmt. Diese werden in der Regel mit dem Begriff regex abgekürzt.
In Muster übergeben Sie den regulären Ausdruck für die Suche. Das ist eine Zeichenkette, die den Ausdruck mit spezifischen Zeichen beschreibt.
In spezString übergeben Sie den String für die Suche nach dem regulären Ausdruck.
In Start geben Sie die Position an, ab der die Suche starten soll.
Sind die Parameter Pos_gefunden und Länge_gefunden Variablen, gibt die Funktion darin Position und Länge des Vorkommens zurück. Bei Arrays gibt die Funktion in Element Null der Arrays Position und Länge des Vorkommens zurück, in den darauffolgenden Elementen Position und Länge der Gruppen, die der reguläre Ausdruck gefunden hat.
Mit dem optionalen Parameter * legen Sie fest, dass die Suche nur an der in Start angegebenen Position ausgeführt werden soll, ohne weiter zu suchen, falls hier nichts Passendes gefunden wird.
Die Funktion gibt True zurück, wenn die Suche ein Vorkommen gefunden hat.
Weitere Informationen über Regex finden Sie im Internet unter:
http://en.wikipedia.org/wiki/Regular_expression
Weitere Informationen zur Syntax regulärer Ausdrücke im Parameter Muster finden Sie im Internet unter:
https://unicode-org.github.io/icu/userguide/strings/regexp.html#regular-expressions
Nach kompletter Übereinstimmung suchen (einfache Syntax):
vfound:=
QUERY BY FORMULA([Employees];Match regex(".*smith.*";[Employees]name))
In Text nach Start suchen:
vfound:=
Beispiel zur Anzeige aller Tags in $1:
$start:=1
Repeat
vfound:=Match regex("<.*>";$1;$start;pos_found;length_found)
If(vfound)
ALERT(Substring($1;pos_found;length_found))
$start:=pos_found+length_found
End if
Until(Not(vfound))
Suche mit Unterstützung von “capture groups”:
vfound:=
ARRAY LONGINT(pos_found_array;0)
ARRAY LONGINT(length_found_array;0)
vfound:=Match regex("(.*)stuff(.*)";$1;1;pos_found_array;length_found_array)
If(vfound)
$group1:=Substring($1;pos_found_array{1};length_found_array{1})
$group2:=Substring($1;pos_found_array{2};length_found_array{2})
End if
Suche beschränkt auf das Muster an der angegebenen Position:
Fügen Sie am Ende einer der beiden vorigen Syntaxarten einen Stern hinzu.
vfound:=Match regex("a.b";"---a-b---";1;$pos_found;$length_found)
`returns True
vfound:=Match regex("a.b";"---a-b---";1;$pos_found;$length_found;*)
`returns False
vfound:=Match regex("a.b";"---a-b---";4;$pos_found;$length_found;*)
`returns True
Hinweis: Die zurückgegebenen Positionen und Längen sind nur im Modus Unicode von Bedeutung oder wenn der Text in Bearbeitung vom 7-bit ASCII Typ ist.
Tritt ein Fehler auf, erzeugt die Funktion einen Fehler, den Sie über eine mit dem Befehl ON ERR CALL installierte Methode abfangen können.
Produkt: 4D
Thema: String
Nummer:
1019
Erstellt: 4D v11 SQL
4D Programmiersprache ( 4D v20 R7)