TextSearchRegEx
obj -> TextSearchRegEx(int1, int2, int3, alpha4) : int
Zeichenfolge mit regulären Ausdrücken in einem Text suchen
Details
- obj: Textpuffer-Deskriptor
- int1: Anfangszeile
- int2: Anfangsspalte
- int3:
- Optionen:
_TextSearchCI
- alpha4: Regulärer Ausdruck
- Resultat:
intSuchresultat (Zeilenummer oder0) - Siehe: Verwandte Befehle ,
TextOpen (),TextInfo (),TextSearch ()
Mit dieser Funktion wird der Textpuffer (obj) mit Hilfe des regulären Ausdrucks (alpha4) durchsucht. In (int1) wird die Zeile und in (int2) die Spalte angegeben, ab welcher die Suche erfolgen soll. Resultat der Funktion ist die Zeilenummer in der eine Entsprechung des regulären Ausdrucks zum ersten mal gefunden wurde. Falls der Begriff nicht gefunden wurde ist das Resultat 0.
Beispiel:
// Nicht auskommentierte Funktionsausrufe von "SysFnc:SelectNode" ermitteln
if (tTextHdl->TextSearchRegEx(1, 1, 0, '(?<!//)SysFnc:SelectNode\(') > 0)
{
// Begriff gefunden
...
}
Mit der Funktion TextInfo () mit der Option _TextSearchClm kann die Spaltenposition und mit der Option _TextSearchLen die Länge der gefundenen Zeichenfolge ermittelt werden.
Folgende Optionen (int3) sind zulässig:
_TextSearchCIBei der Suche wird die Groß/-Kleinschreibung nicht beachtet.
Der Befehl kann von der DLL-Schnittstelle nur ausgeführt werden, wenn der Eintrag pgx_extended = 1 in der Konfigurationsdatei c16_pgxsvc.cfg gesetzt wurde.
Fehlerwerte:
Folgende Fehlerwerte können von dem Befehl zurückgegeben werden:
- Fehlerwert: Bedeutung
_ErrRegExRuleSyntax: Syntaxfehler im regulären Ausdruck_ErrRegExBadEscapeSequence: Nicht aufgelöste Escape-Sequenz im Ausdruck_ErrRegExPropertySyntax: Ungültige Unicode-Eigenschaft_ErrRegExNotSupported: Verwendung einer Funktion, die nicht unterstützt wird_ErrRegExMismatchedParentheses: Falsch verschachtelte Klammern im regulären Ausdruck_ErrRegExNumberTooBig: Dezimalzahl zu groß_ErrRegExBadInterval: Fehler im {min,max} Intervall_ErrRegExMaxLtMin: Im Intervall {min,max} ist max kleiner als min_ErrRegExInvalidBackRef: Rückbezug auf eine nicht vorhandene Referenz_ErrRegExInvalidFlag: Ungültiger Modus_ErrRegExLookBehindLimit: Rückschau Ausdrücke müssen eine beschränkte maximale Länge haben_ErrRegExSetContainsString: Reguläre Ausdrücke können keine UnicodeSets mit Zeichenketten beinhalten_ErrRegExMissingCloseBracket: Fehlende schließende Klammer in einem Klammerausdruck_ErrRegExInvalidRange: In einer Zeichenmenge [x-y] ist x größer als y_ErrRegExStackOverflow: Stapelüberlauf in der Ablaufverfolgung des regulären Ausdrucks
Mögliche Laufzeitfehler:
_ErrHdlInvalid: Textpuffer-Deskriptor (obj) ungültig