Alexander (HH): RegEx > Wörter mit großgeschriebenen Anfangsbuchstaben finden

Beitrag lesen

Moin Moin!

Hausaufgabe oder ernstes Problem?

In beiden Fällen hilft http://www.php.net/manual/en/ref.pcre.php und http://www.php.net/manual/en/reference.pcre.pattern.syntax.php

Gehen wir's mal systematisch an.

Du suchst primär Großbuchstaben: /[A-Z]/

Die sollen am Wortanfang stehen, also einer Wortgrenze folgen: /\b[A-ZÄÖÜ]/

Den Großbuchstaben sollen weitere Kleinbuchstaben folgen, mindestens einer: /\b[A-ZÄÖÜ][a-zÄÖÜäöüß]+/

Nach den Kleinbuchstaben soll das wieder einer Wortgrenze vorhanden sein: /\b[A-ZÄÖÜ][a-zÄÖÜäöüß]+\b/

Und das ganze willst Du einsammeln: /\b([A-ZÄÖÜ][a-zÄÖÜäöüß]+)\b/

Und Du willst nicht, dass Worte nach Satzzeichen gefunden werden: /(?<![.,?!:]\s+)\b([A-ZÄÖÜ][a-zÄÖÜäöüß]+)\b/x sollte das schaffen (ungetestet). Warum diese merkwürdige Einschränkung? Willst Du Artikel ausfiltern? Bei Sätzen wie "Elefanten sitzen nicht auf Autos." fällt die Regel auf die Nase.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".