Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] sprawdzenie stringa i skasowanie ostatniego znaku
diasek7
post 12.04.2011, 10:06:55
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 9.02.2011

Ostrzeżenie: (0%)
-----


witam,
jak zrobic cos takiego, ze mam np dwa stringi:

to jest pierwszy string!
to jest drugi string

i jesli w jakims stringu znajduje sie na koncu ! to zamieniamy go na @? a jesli nie ma nic to na wykrzyknik?

Ten post edytował diasek7 12.04.2011, 10:15:46
Go to the top of the page
+Quote Post
lukaskolista
post 12.04.2011, 10:24:53
Post #2





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


na szybko:

1. Za pomoca strlen pobierasz dlugosc stringa
2. traktujesz stringa jako tablice i pobierasz ostatni element (strlen() - 1)
masz ostatni element stringa, przepuszczasz przez filtr i dzialasz smile.gif
Go to the top of the page
+Quote Post
modern-web
post 12.04.2011, 10:41:17
Post #3





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

Ostrzeżenie: (0%)
-----


str_replace ? Kombinuj wink.gif


--------------------
Pomogłem? Kliknij `Pomógł`. To nic nie kosztuje, a mnie usatysfakcjonuje! ;)
Go to the top of the page
+Quote Post
lukaskolista
post 12.04.2011, 10:44:25
Post #4





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


str_replace wywoluje sie rekurencyjnie po kazdej wykonanej zmianie, lepsze jset strtr, ktore przeleci caly string po kolei bez rekurencji
Go to the top of the page
+Quote Post
diasek7
post 12.04.2011, 10:48:36
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 9.02.2011

Ostrzeżenie: (0%)
-----


cos mi tam wyszlo, a znalazlem jeszcze cos takiego:
  1. $string = preg_replace("/[^a-zA-Z0-9 \-]/", "", $string);
  2. $string = trim(preg_replace("/\\s+/", " ", $string));

powie mi ktos jak to mniej wiecej dziala?
Go to the top of the page
+Quote Post
kamil_lk
post 12.04.2011, 10:53:15
Post #6





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

Ostrzeżenie: (0%)
-----


poczytaj o wyrażeniach regularnych
Go to the top of the page
+Quote Post
lukaskolista
post 12.04.2011, 10:55:27
Post #7





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


zamienia wszystkie znaki niepasujace do wzorca na stringi podane w 2 argumencie. Nie bardzo sie nada.

  1. $string = 'abcd';
  2. echo $string[0];
  3. echo '<br />';
  4. echo $string[2];


nie lepiej potraktowac stringa, jak tablice?
Go to the top of the page
+Quote Post
diasek7
post 12.04.2011, 11:03:06
Post #8





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 9.02.2011

Ostrzeżenie: (0%)
-----


dzieki, a to drugie? bo tego to juz nie potrafi zalapac co to jest to chociazby s+

Go to the top of the page
+Quote Post
lukaskolista
post 12.04.2011, 11:15:11
Post #9





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


\s to bialy znak, a bialy znak to spacja, tabulacja, nowa linia (w JS, w php pewnie podobnie)
Go to the top of the page
+Quote Post
diasek7
post 12.04.2011, 11:17:24
Post #10





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 9.02.2011

Ostrzeżenie: (0%)
-----


dzieki wielkie smile.gif

a jeszcze takie pytanie, jak robicie zamienianie polskich znakow na zwykle? jak np mam cześć to zeby zamienilo na czesc ?
Go to the top of the page
+Quote Post
lukaskolista
post 12.04.2011, 11:41:53
Post #11





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


nie wiem, nie robie czegos takiego. Najprostszy sposob to strtr, gdzie jako drugi parametr podaje sie tablice, np.
  1. $tab = array(
  2. 'ą' => 'a',
  3. 'ę' => 'e',
  4. );
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 24.06.2025 - 13:08