dedlfix: Das nächste regex-Problem

Beitrag lesen

Hi!

/[§%&'<>#¡¢£¤¥¦©ª«¬®=/¯°²³´µ¶·¸¹º»¼½¾¿×÷]+u/

Dass Modifizierer hinter dem Delimiter stehen, hat Martin ja schon erwähnt und das ist eigentlich auch RegExp-Grundlagenwissen.

PS: Was Unicode character properties ist, was mir das sagen soll bzw. wo ich das zu meinem Vorteil einsetzten kann, verstehe ich nicht so ganz.

Es gibt Escape-Sequenzen, wie \n für New Line, \s für Whitespace, \S für alles außer Whitespace und viele mehr. Diese stehen für bestimmte einzelne Sonderzeichen oder ganze Zeichengruppen. Mit den Unicode-Character-Propertys bekommst du solche Zeichengruppen basierend auf den Eigenschaften, die für die Unicode-Zeichen definiert sind. So steht \pL (oder \p{L}) beispielweise für alle Buchstaben, \pLu für alle großen Buchstaben und \PL für alles was keine Buchstaben sind. Welche Zeichen nun in welche Kategorien fallen, kann ich dir aber nicht sagen. Dazu müsstest du in Richtung Unicode Consortium forschen, denn die definieren diese Eigenschaften. Vermutlich findest du sie in der Unicode Character Database. Bevor du aber jedes Zeichen einzeln definierst und dann doch welche vergisst, wäre eine Auswahl (oder auch ein Ausschluss) über eine (oder mehrere) der Property-Gruppen für dich effektiver und effizienter.

Lo!