Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][wyrażenie regularne] usuwanie krzaków
JoShiMa
post
Post #1





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Mam wyrażenie regularne, które, przynajmniej teoretycznie powinno usuwać wszystko co nie jest literą cyfra i minusem. Niestety przepuszcza równieć inne krzaki.

Na przykład w tekście: the way » :photoschau on we heart it / visual bookmark #8765543

nie powinno być tych strzałek za słowem 'way'

Próbowałam tak:
  1. preg_replace('/([^a-żA-Ż0-9-])+/',' ',$string)

i tak:
  1. preg_replace('/([^\w-ęĘóÓąĄśŚłŁżŻźŹćĆńŃ])+/',' ',$string)



Jak się takich znaków pozbyć zostawiając jednocześnie polskie?

Oczywiście jak zrezygnuję z przepuszczania polskich znaków (w szczególności 'ż') to inne 'krzaki tez znikają, ale nie o to chodzi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
potreb
post
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


  1. $str = "dssdsd8ŻżÓóŁł_972839809**&^%^3223;';/.[;[";
  2. $str = preg_replace( "/[^a-z0-1-ŻżÓóŁł_]{1}/iu", '-', $str );
  3. echo $str


Powinno być, ogólnie chyba lepiej czyścić z polskich znaków.

Ten post edytował potreb 13.04.2011, 21:05:38
Go to the top of the page
+Quote Post
JoShiMa
post
Post #3





Grupa: Zarejestrowani
Postów: 1 374
Pomógł: 149
Dołączył: 1.03.2006

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


Cytat(potreb @ 13.04.2011, 21:04:54 ) *
  1. $str = "dssdsd8ŻżÓóŁł_972839809**&^%^3223;';/.[;[";
  2. $str = preg_replace( "/[^a-z0-1-ŻżÓóŁł_]{1}/iu", '-', $str );
  3. echo $str

Super. Wreszcie działa.

Cytat(potreb @ 13.04.2011, 21:04:54 ) *
Powinno być, ogólnie chyba lepiej czyścić z polskich znaków.

Ba... Gdyby to tylko ode mnie zależało...
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 9.10.2025 - 18:02