prevnext   » Startseite » Haupt-Referenz » Funktions-Referenz » findAllPCRE()

findAllPCRE()

Alle Vorkommen einer Zeichenkette mittels eines PCRE suchen und eine Liste mit den Fundpositionen und Fundtexten als Ergebnis liefern.

Syntax:

any findAllPCRE ( text, regex )
any findAllPCRE ( text, regex, pcre_options )
any findAllPCRE ( text, regex, pcre_options, start_pos )
any findAllPCRE ( text, regex, pcre_options, start_pos, skip_count )
any findAllPCRE ( text, regex, pcre_options, start_pos, skip_count, max_find )

Parameter:

regex Der Text, in dem gesucht wird. Listen und Maps werden rekursiv abgearbeitet. Skalare werden in eine Zeichenkette gewandelt. Das Funktionsergebnis hat dann dieselbe Listen- und Map-Struktur wie regex.
regex Als Parameter wird eine Zeichenkette mit dem Perl kompatiblen regulären Ausdruck (PCRE) oder eine durch compilePCRE() erzeugte ID erwartet. Im Falle einer ID wird der Parameter options ignoriert.
ignore_case Der Parameter pcre_options wird zwangsweise mittels int32() in eine 32-Bit-Ganzzahl gewandelt, die als Bitfeld interpretiert wird. Dieses Bitfeld enthält Optionen für die PCRE-Compilierung (siehe compilePCRE()). Ohne Angabe wird der Wert Null verwendet.

Falls regex eine ID enthält, dann wird dieser Parameter ignoriert.

start_pos Der Parameter start_pos wird zwangsweise mittels int32() in eine 32-Bit-Ganzzahl gewandelt und mittels index() normiert und gibt die Startposition, ab der innerhalb von text gesucht wird, an. Ohne Angabe wird der Wert Null verwendet.
skip_count Der Parameter skip_count wird zwangsweise mittels int32() in eine 32-Bit-Ganzzahl gewandelt und gibt die Anzahl der Fundstellen an, die ignoriert werden. Ohne Angabe wird der Wert Null verwendet.
max_find Der Parameter max_find wird zwangsweise mittels int32() in eine 32-Bit-Ganzzahl gewandelt. Nach dem Ignorieren der ersten skip_count Vorkommen werden maximal max_find Vorkommen gesucht und in der Ergebnisliste abgespeichert. Ohne Angabe wird der Wert * (==2.147.483.647) verwendet.

Beschreibung:

Es werden Vorkommen einer durch reg_expr beschriebenen Zeichenkette im aktuellen Objekt ab Position 0 gesucht. Wurde start_pos angegeben, dann beginnt die Suche ab Position index(start_pos,len(text)).

Ist skip_count definiert, dann werden die ersten skip_count Fundstellen ignoriert und die Suche fortgesetzt. Zusammen mit dem ersten Vorkommen werden bis zu maximal max_find Vorkommen gesucht.

Funktionsergebnis:   ANY

Bei einem ungültigen regulären Ausdruck wird NONE mit gesetzten Fehlerbits als Funktionsergebnis geliefert.

Anderenfalls wird eine Struktur bestehend aus Listen und Maps zurückgeliefert, die der Struktur von text entspricht. Für jedes Skalar aus text wird dann eine dreidimensionale Liste als Ergebnis eingetragen:

  1. Diese Liste der ersten Dimension enthält Null bis max_find Elemente; für jede Fundstelle eines.
  2. Jedes Listenelement der ersten Dimension enthält eine Liste mit der gesamten Fundstelle (Index 0) und weitere Listen mit den Fundstellen der Klammerausdrücke (ab Index 1).
  3. Jedes Listenelement der zweiten Dimension enthält eine Liste mit exakt drei Elementen: Startposition, Endposition, Zeichenkette (Typ INT32, INT32 und STRING).

Siehe auch:
 findAllRE()   findTextPCRE()   findPCRE()   find()   findReverse() 

Weitere ähnliche Funktionen:

Perl kompatible Reguläre Ausdrücke
Funktion Kurzinfo
compilePCRE() Eine PCRE übersetzen und einer eindeutigen ID zuweisen.
countPCRE() Die Anzahl der Treffer eines PCRE berechnen.
findAllPCRE() Alle Vorkommen einer Zeichenkette mittels eines PCRE suchen und eine Liste mit den Fundpositionen und Fundtexten als Ergebnis liefern.
findPCRE() Eine Zeichenkette mittels eines PCRE suchen und die Startposition dieser Zeichenkette ermitteln.
findTextPCRE() Eine Zeichenkette mittels eines PCRE suchen und den gefundenen Text als Ergebnis liefern.
itemPCRE()
m$findKeysPCRE()
splitPCRE()
substPCRE() Eine Zeichenkette mittels eines Perl kompatiblen regulären Ausdrückes suchen und die Fundstelle durch eine andere Zeichenkette ersetzen.
 
Suchen & Ersetzen
Funktion Kurzinfo
compilePCRE() Eine PCRE übersetzen und einer eindeutigen ID zuweisen.
compileRE() Eine RegEx übersetzen und einer eindeutigen ID zuweisen.
count()
countNum() Die Anzahl der numerischen Elemente zählen.
countPCRE() Die Anzahl der Treffer eines PCRE berechnen.
countRE() Die Anzahl der Treffer eines RegEx berechnen.
countVal() Die Anzahl der skalaren Elemente zählen.
find()
findAllPCRE() Alle Vorkommen einer Zeichenkette mittels eines PCRE suchen und eine Liste mit den Fundpositionen und Fundtexten als Ergebnis liefern.
findAllRE() Alle Vorkommen einer Zeichenkette mittels eines RegEx suchen und eine Liste mit den Fundpositionen und Fundtexten als Ergebnis liefern.
findPCRE() Eine Zeichenkette mittels eines PCRE suchen und die Startposition dieser Zeichenkette ermitteln.
findRE() Eine Zeichenkette mittels eines RegEx suchen und die Startposition dieser Zeichenkette ermitteln.
findReverse()
findTextPCRE() Eine Zeichenkette mittels eines PCRE suchen und den gefundenen Text als Ergebnis liefern.
findTextRE() Eine Zeichenkette mittels eines RegEx suchen und den gefundenen Text als Ergebnis liefern.
item()
itemPCRE()
itemRE()
m$find2() Ein Element in einer Map oder ersatzweise die virtuellen Nachbarn suchen.
m$find3() Ein Element in einer Map und seine virtuellen Nachbarn suchen.
m$findKeys()
m$findKeysBegin()
m$findKeysEnd()
m$findKeysPCRE()
m$findKeysRE()
m$findNext() Den Nachfolger in einer Map zu einem gegebenen Schlüssel finden.
m$findPrev() Den Vorgänger in einer Map zu einem gegebenen Schlüssel finden.
replace()
split()
splitEol() Aus einem Text eine Liste mit den einzelnen Zeilen erzeugen.
splitPCRE()
splitRE()
splitString()
subst() Eine Zeichenkette suchen und die Fundstelle durch eine andere Zeichenkette ersetzen.
substChar() In einer Zeichenkette nach einzelnen Zeichen suchen und die Fundstellen durch Zeichenketten ersetzen.
substPCRE() Eine Zeichenkette mittels eines Perl kompatiblen regulären Ausdrückes suchen und die Fundstelle durch eine andere Zeichenkette ersetzen.
substRE() Eine Zeichenkette mittels eines regulären Ausdrückes suchen und die Fundstelle durch eine andere Zeichenkette ersetzen.