dedlfix: PHP Multiarray aus Json-> Suchen und sicher finden (auch bei Fragmenten)

Beitrag lesen

Tach!

bietet (mb-)ereg-match denselben Funktionsumfang wie preg-match?

Die Doku der Funktionen schweigt sich da leider aus - kein Link auf die (jeweilige) Pattern-Syntax, beim pattern-Parameter heißt es nur "The pattern to search for, as a string. "

PHP besteht neben dem Kern der Sprache aus Extensions, in denen die Funktionen eines bestimmten Themas zusammengefasst sind. Die PHP-Dokumentation trägt dem Rechnung, indem sie wie ein Buch aufgebaut ist, in dem jede Extension ihr eigenes Kapitel hat. Diese bestehen wiederum aus allgemeinen Informationen zur Extension und den Beschreibungen der Funktionen. Die Patternsyntax ist allgemeine Information und steht in ihrem eigenen Unterkapitel im Kapitel zur PRCE-Extension. In der Breadcrumb-Navigation kommt man recht einfach auf die übergeordneten Kapitel.

Ansonsten, ja, ein Link zur Syntax bei der Parameterbeschreibung hätte nicht geschadet. Leider gibts keine Möglichkeit mehr, Feedback einfach zu hinterlassen.

(ok, unter "See also" findet sich bei preg_match dann doch ein Link zur PCRE-Doku - der gehört m.E. in die Beschreibung des pattern-Parameters - aber bei mb_ereg_match find ich da keinerlei Hinweis)

Ich hab im Netz noch alte Kopien der PHP-Dokumentation gefunden, darin gibt es selbst im POSIX-Regex-Kapitel keine Dokumentation der Syntax. Da es aber ein Standard ist, findet man Dokumentation anderenorts. MySQL beispielsweise nutzt diese Syntax für ihre Regex-Funktionen.

Ich meine, früher, als es auch noch ereg_match (ohne mb) gab, hatte das einen deutlich geringeren Umfang an Möglichkeiten beim Pattern als preg_match.

Da die POSIX-Regex-Extension seit PHP 7.0 entfernt ist, wurde auch irgendwann das Kapitel aus der Dokumentation genommen. Warum diese Regexe doch noch als Teil der Multibyte-Strings-Extension vorhanden sind, ist eigenartig. Immerhin kann man dort optional auswählen, welchen von acht Syntax-Modes man haben möchte. Beschreibungen oder verlinkte Dokumentation findet man da aber nicht, außer PCRE in dessen Kapitel.

PCRE bietet zwar mehr Möglichkeiten als POSIX, aber Regexe sind Mustersuchen. Die Unicode-Fähigkeiten beschränken sich bei PCRE lediglich darauf, dass man Zeichen gemäß bestimmter Eigenschaften (ist Buchstabe, Ziffer, Punktuation etc.) suchen kann. Es ist leider kein Vergleich zu beispielsweise MySQLs Möglichkeiten, die die Kollationen bieten, bei denen man zu den Basisbuchstaben auch die diakritischen Varianten finden kann.

dedlfix.