X
ďťż

[PHP] Usuwanie takich samych znaków na poc... ...zątku i na końcu

       

Podstrony


telcocafe

Chciałbym napisać funkcje, która usuwa znaki (podane w pierwszym parametrze) na początku i na końcu drugiego parametru, aż do momentu, gdy natrafi na inny znak. Na pewno wytłumaczyłem to nieco niezrozumiale więc postaram się to wyjaśnić na przykładzie:

Takie wywołanie funkcji:

Delete_Chars('p', 'pptekstpppp')

... ma zwrócić wartość 'tekst'.

Domyślam się, że muszę pętlą while usuwać znaki tak długo aż następny nie będzie inny niż ten podany w pierwszym parametrze, potem odwrócić ten tekst i zrobić to samo. Tylko jak sprawdzić, jaki jest pierwszy znak w tekście i jak odwrócić tekst?



preq_replace służy do wzorców. Czyli nie musisz wszystkiego robić na piechotę :)
Ale w sumie łatwiej byłoby:
$string="pppppppptekstppppppp"; for ($i=0;$i<=strlen($string)-1;$i++) { if ($string[$i]!='p') { print $string[$i]; } }
Użytkownik Spine edytował ten post 14 sierpień 2007, 10:25

Chciałbym napisać funkcje, która usuwa znaki (podane w pierwszym parametrze) na początku i na końcu drugiego parametru, aż do momentu, gdy natrafi na inny znak. Na pewno wytłumaczyłem to nieco niezrozumiale więc postaram się to wyjaśnić na przykładzie:

Takie wywołanie funkcji:

Delete_Chars('p', 'pptekstpppp')

... ma zwrócić wartość 'tekst'.

Domyślam się, że muszę pętlą while usuwać znaki tak długo aż następny nie będzie inny niż ten podany w pierwszym parametrze, potem odwrócić ten tekst i zrobić to samo. Tylko jak sprawdzić, jaki jest pierwszy znak w tekście i jak odwrócić tekst?

Ja proponuje twoj drugi parametr załadowac do funkcji explode i zrobić z niego tablice. Nastepnie sprawdzać czy pierwszy parametr jest równy pierwszej zmiennej tablicowej jesli tak to go usunac i a nalogicznie z potapic z ostatnim
Użytkownik statjacek edytował ten post 14 sierpień 2007, 10:27
Chyba chodzi o trim()
http://pl2.php.net/m...nction.trim.php

$tekst=trim($tekst,'p');



Dzięki. Skorzystam chyba z drugiego pomysłu Spine'a bo jest najprostszy :-) Mając funkcje String() odwrócenie Stringa raczej nie będzie już problemem.

// Chyba chodzi o trim() http://pl2.php.net/manual/pl/function.trim.php $tekst=trim($tekst,'p');

To wydaje się być jeszcze prostszym sposobem, ale czy ona mi nie usunie znaków wewnątrz tekstu? Na przykład jak mam tekst 'pppMapappp' to nie zwróci 'Maa'?
Użytkownik Capellini edytował ten post 14 sierpień 2007, 11:07

// Chyba chodzi o trim() http://pl2.php.net/manual/pl/function.trim.php $tekst=trim($tekst,'p');

To wydaje się być jeszcze prostszym sposobem, ale czy ona mi nie usunie znaków wewnątrz tekstu? Na przykład jak mam tekst 'pppMapappp' to nie zwróci 'Maa'?


trim — Strip whitespace (or other characters) from the beginning and end of a string
Więc będzie dobrze.

Skorzystałem z trim(), jakby kogoś to interesowało.

Do moderatora: Prosze usunac ten post
Użytkownik statjacek edytował ten post 14 sierpień 2007, 15:08
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.

    Drogi uzytkowniku!

    W trosce o komfort korzystania z naszego serwisu chcemy dostarczac Ci coraz lepsze uslugi. By moc to robic prosimy, abys wyrazil zgode na dopasowanie tresci marketingowych do Twoich zachowan w serwisie. Zgoda ta pozwoli nam czesciowo finansowac rozwoj swiadczonych uslug.

    Pamietaj, ze dbamy o Twoja prywatnosc. Nie zwiekszamy zakresu naszych uprawnien bez Twojej zgody. Zadbamy rowniez o bezpieczenstwo Twoich danych. Wyrazona zgode mozesz cofnac w kazdej chwili.

     Tak, zgadzam sie na nadanie mi "cookie" i korzystanie z danych przez Administratora Serwisu i jego partnerow w celu dopasowania tresci do moich potrzeb. Przeczytalem(am) Polityke prywatnosci. Rozumiem ja i akceptuje.

     Tak, zgadzam sie na przetwarzanie moich danych osobowych przez Administratora Serwisu i jego partnerow w celu personalizowania wyswietlanych mi reklam i dostosowania do mnie prezentowanych tresci marketingowych. Przeczytalem(am) Polityke prywatnosci. Rozumiem ja i akceptuje.

    Wyrazenie powyzszych zgod jest dobrowolne i mozesz je w dowolnym momencie wycofac poprzez opcje: "Twoje zgody", dostepnej w prawym, dolnym rogu strony lub poprzez usuniecie "cookies" w swojej przegladarce dla powyzej strony, z tym, ze wycofanie zgody nie bedzie mialo wplywu na zgodnosc z prawem przetwarzania na podstawie zgody, przed jej wycofaniem.