Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]operacja na stringach
Forum PHP.pl > Forum > Przedszkole
acztery
Hej,

Mam słowo

AlaMaKota

wynikiem powinno byc

Ala

Czyli pokazujemy string do 1 napotkanej dużej litery.

próbowałem coś koło tego:

  1. $str = 'AlaMaKota';
  2. $chars = preg_split('/[A-Z]/', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);


ale nie działa.

Znalazłem takie cos:

  1. function spacify($camel, $glue = ' ') {
  2. return $camel[0] . substr(implode($glue, array_map('implode', array_chunk(preg_split('/([A-Z])/',
  3. ucfirst($camel), -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE), 2))), 1);
  4. }


można to łatwo przerobić, ale może ktoś z Was zna coś lepszego.
mortus
Może takie wyrażenie regularne ^([A-Z][^A-Z].*?)[A-Z] bez żadnych flag. A jeśli są to łańcuchy składające się tylko z liter, to nawet ^([A-Z][^A-Z][a-z]*)[A-Z].
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.