Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] preg_match_all polski znak
Forum PHP.pl > Forum > Przedszkole
blizniak
  1. <td align="right" >właściciel - osoba prywatna</td>


  1. preg_match_all('/\<td\ align\=\"right\" \>wła(.*?)\<\/td\>/ism',$podstrona,$out_zglaszajacy);
  2. print_r($out_zglaszajacy);

tutaj funkcja ta wyciaga mi cos takiego
Kod
Array ( [0] => ściciel - osoba prywatna )

a czemu jak zrobie tak
  1. preg_match_all('/\<td\ align\=\"right\" \>właś(.*?)\<\/td\>/ism',$podstrona,$out_zglaszajacy);

nie wyciaga mi nic, a chce zeby wyciaglo "ciciel - osoba prywatna"
problem jest z znakiem "ś"
jak to mozna rozwiazac
athei
A skrypt i plik masz z odpowiednimi kodowaniami (utf8)? U mnie działa, tylko nie
preg_match_all('/\<td\ align\... a preg_match_all('/\<td align\... . Po tej zamianie wyciąga to co chcesz.
Tutaj także działa http://regexp.pl/
blizniak
ok w tym powyzszym przykladzie mialem problem z kodowaniem i dlatego sie sypalo

a moglby ktos zobaczyc co tutaj moze byc zle

  1. <tr><td align="left" width="50%" ><b>kolor:</b></td>
  2. <td align="right" >bialy</td>
  3. </tr>


jak zrobie tak to wyciaga mi bialy
  1. preg_match_all('/\<td align\=\"right\" \>(.*?)\<\/td\>/ism',$pod,$out);


a jak chce to zrobic tak to nie dziala
  1. preg_match_all('/\<b\>kolor\:\<\/b\>\<\/td\>\<td align\=\"right\" \>(.*?)\<\/td\>/ism',$pod,$out);


z tego co zauwazylem to problem jest tu miedzy znacznikami td
bo jezeli kod html by wygladal tak
to wszystko by dzialalo dobrze

  1. <tr><td align="left" width="50%" ><b>kolor:</b></td><td align="right" >bialy</td>
  2. </tr>

nie wiem co tam moze byc miedzy tymi znacznikami td, zadnego br ani niczego innego tam nie widac
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.