Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] String_replace - Dowolny znak
Zellus
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.07.2009

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


Witam!
Mam taki pytanie, głowię się cały dzień i mi nie chce wyjść:/
  1. $zrodlo_strony = str_replace('<td class="table_row/[0-9]/" rowspan="/[0-9]/" align=center>','|',$zrodlo_strony);

Wiem że jest to źle ale nie wiem dlaczego:/
Ogólnie chodzi o to że chce pobrać dane z innej strony(żeby nie było wątpliwości, chodzi o zastępstwa z strony szkoły:P) chciałbym usyskać taki efekt:
  1. <td class="table_row1" rowspan="1" align=center>2C</td><td class="table_row1" rowspan="1" align=center>6</td><td class="table_row1" rowspan="1" align=center>Mat</td><td class="table_row1" rowspan="1" align=center>S----i Roman</td><td class="table_row1" rowspan="1" align=center></td>
-->
  1. 2C|6|Mat|S----i Roman|

Wie ktoś może jak to zrobić? Każdy wers ma inne te liczby(co widać w pierwszym przykładzie...), a niechciałbym wypisywać wszystkich możliwości... Z góry dzięki za pomoc

Ps. Chyba nie napisałem tego zbyt niezrozumiale^^
Go to the top of the page
+Quote Post
Daiquiri
post
Post #2





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Zasadniczo str_replace() służy do zamiany znaków w ciągu (np. w ciągu mama może zamienić "m" na "t" co da wynik tata). Łopatologiczna metoda to skorzystanie z explode() dla </td> i wyciągnięcia danych z tablicy.

Ten post edytował Daiquiri 28.09.2010, 16:30:28
Go to the top of the page
+Quote Post
Zellus
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.07.2009

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


Cytat(Daiquiri @ 28.09.2010, 17:29:53 ) *
Zasadniczo str_replace() służy do zamiany znaków w ciągu (np. w ciągu mama może zamienić "m" na "t" co da wynik tata). Łopatologiczna metoda to skorzystanie z explode() dla </td> i wyciągnięcia danych z tablicy.

Ale najpierw muszę usunąć(zamienić na '|') to co otwiera każdą kolejną komórkę to znaczy
  1. <td class="table_row1" rowspan="1" align=center>

  1. <td class="table_row2" rowspan="1" align=center>

  1. <td class="table_row3" rowspan="1" align=center>

  1. <td class="table_row1" rowspan="2" align=center>

Etc. i właśnie tu jest problem.

O explode() wiem i zamierzałem z niego skorzystać, ale dopiero później, to akurat już potrafiętongue.gif

Ten post edytował Zellus 28.09.2010, 16:39:43
Go to the top of the page
+Quote Post
Spawnm
post
Post #4





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




zobacz preg_replace()
Go to the top of the page
+Quote Post
Zellus
post
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 25.07.2009

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


Dzięki działa haha.gif
Rozwiązanie:
  1. $zrodlo_strony = preg_replace('[<td class="table_row." rowspan="." align=center>]','|',$zrodlo_strony);

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 Aktualny czas: 21.08.2025 - 09:53