forTeesSake Geschrieben 2. November 2005 Geschrieben 2. November 2005 hi und hallo, ich habe einen string der je nachdem entweder aus nur kleinbuchstaben oder wortgetrennt aus klein, und beim neuen wortanfang aus einem grossbuchstaben, bestehen kann und möchte diesen nach grossbuchstaben aufsplitten und zwischen den worten leerzeichen schreiben. z.b. "einrichtungen" ergibt einrichtungen "einrichtungenKategorien" ergibt "einrichtungen Kategorien" "einrichtungenKategorienAnlegen" ergibt "einrichtungen Kategorien Anlegen" weiss jemand wie man das am besten macht? Zitieren
kills Geschrieben 2. November 2005 Geschrieben 2. November 2005 Hi hm ungetestet: preg_split ("/[A-Z]/", $text); [/PHP] Danach das Array entsprechend verarbeiten... Gruß, Markus Zitieren
forTeesSake Geschrieben 2. November 2005 Autor Geschrieben 2. November 2005 $arTest = preg_split ("/([A-Z])/", "einBereich"); da kommt dann raus: $arTest[0] = "ein" $arTest[1] = "ereich" da er das splitElement offensichtlich ja mit rausschneided...wie kann ich das verhindern? Zitieren
forTeesSake Geschrieben 2. November 2005 Autor Geschrieben 2. November 2005 $arTest = preg_split ("/([A-Z])/", "einBereich", 0, PREG_SPLIT_DELIM_CAPTURE); $arTest[0] = "ein" $arTest[1] = "B" $arTest[2] = "ereich" hmmm....das klappt schon aber wie krieg ichs dann hin wenn mehrere worte, also wo mach dann das leerzeichen? immer bei index ungerade?... Zitieren
beebof Geschrieben 2. November 2005 Geschrieben 2. November 2005 ebenfalls ungetestet: $text=preg_replace("/([A-Z])/"," \$1",$text); [/PHP] Zitieren
kills Geschrieben 2. November 2005 Geschrieben 2. November 2005 ebenfalls ungetestet: $text=preg_replace("/([A-Z])/"," \$1",$text); [/PHP] Ich glaub diese Lösung ist besser... Zitieren
forTeesSake Geschrieben 3. November 2005 Autor Geschrieben 3. November 2005 sauber! das funktioniert perfekt. vielen dank Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.