RegexMatchCaptured

string RegexMatchCaptured ( value rxMatch, string/value strName/Index = 0 );

Rückgabewert

Rückgabewert

Beschreibung

Zeichenkette

Es wurde eine Übereinstimmung gefunden.

Leere Zeichenkette
("")

Es wurde keine Übereinstimmung für den übergebenen Gruppenname strName bzw. für den gewählten Index gefunden oder der übergebene RegexMatch-Verweis für rxMatch ist ungültig.

Parameter

rxMatch

Ein gültiger RegexMatch-Verweis, der das Ergebnis eines RegexMatch-, RegexIteratorNext- oder RegexIteratorPeekNext-Aufrufs enthält.

strName

Der Name der Gruppe, die eine Übereinstimmung hat. Hat diese Gruppe keine Übereinstimmung oder existiert diese Gruppe nicht so wird eine leere Zeichenkette zurückgegeben.

Index

Der Index 0 liefert immer das Gesamtübereinstimmungsergebnis (gilt auch für gruppenlose Filtermuster).

Besitzt das Filtermuster Gruppen, so kann eine Gruppe über den Index mit 1 beginnend ausgelesen werden.

Bemerkungen

Liefert die Teilzeichenkette einer Übereinstimmung für die Gruppe an der n-ten Stelle Index bzw. mit dem entsprechenden Gruppenname strName, die im RegexMatch-Verweis rxMatch enthalten ist.

Beispiel

value rxMatch, rxIterator;
string strResult, strLastError;

//Sucht nach dem Muster "TemperaturX:Y" - wobei X und Y numerische Zeichenfolgen sind,
//wobei die Zeichenfolge X zu Gruppe 'nr' und Y zu Gruppe 'temp' gruppiert wird
if (! RegexCreate (rxPattern, "Temperatur(?<nr>\\d+):(?<temp>\\d+)")) 
    return (RegexGetLastError (strLastError));
end
RegexGlobalMatch (rxPattern, rxIterator, "Temperatur1:120°C Druck1:12bar Temperatur2:198°C Druck2:34bar");

while (RegexIteratorHasNext (rxIterator)) //ist eine weitere Übereinstimmung vorhanden?
    rxMatch = RegexIteratorNext (rxIterator); //nächste Übereinstimmung auslesen
    if (rxMatch != 0)
        strResult += RegexMatchCaptured (rxMatch);
        strResult += ": ";
        strResult += RegexMatchCaptured (rxMatch, "nr");
        strResult += " - ";
        strResult += RegexMatchCaptured (rxMatch, "temp");
        strResult += "\n";
    end
    strResult += "-------------------------\n";
end 

Die Regex-Funktionen

Siehe auch RegexCreate, RegexSetPattern, RegexClose, RegexGetLastError, RegexMatch, RegexGlobalMatch, RegexMatchHasMatch, RegexMatchHasPartialMatch, RegexMatchCaptured, RegexIteratorHasNext, RegexIteratorNext, RegexIteratorPeekNext, RegexMatchCapturedStart, RegexMatchCapturedLength, RegexMatchCapturedEnd