ďťż
Podstrony
|
telcocafeWitam. Mam na wejściu w jakiejś zmiennej taki kod HTML(bez znaków nowej linii, ale dałem tak, żeby było estetyczniej):<TR><TD>1</TD><TD>Pipidówka Pipidowice</TD><TD>17</TD><TD>12</TD><TD>2</TD><TD>3< /TD><TD>76</TD><TD>32</TD><TD>38</TD></TR> <TR><TD>2</TD><TD>Łososianka Łososiowo</TD><TD>17</TD><TD>12</TD><TD>2</TD><TD> 3</TD><TD>52</TD><TD>28</TD><TD>38</TD></TR> <TR><TD>3</TD><TD>Forumowianka Ekspertowice</TD><TD>17</TD><TD>12</TD><TD>1</TD><TD> 4</TD><TD>77</TD><TD>35</TD><TD>37</TD></TR> Krótko mówiąc, na wejściu mamy tabelę piłkarską a w środku takie pierdoły jak liczba meczy, bramek i inne takie. A co chcę osiągnąć? Osiągnąć chcę mniej więcej takie coś: <TR><TD>1</TD><TD>Pipidówka Pipidowice</TD><TD><STRONG>38</STRONG></TD></TR> <TR><TD>2</TD><TD>Łososianka Łososiowo</TD><TD><STRONG>38</STRONG></TD></TR> <TR><TD>3</TD><TD>Forumowianka Ekspertowice</TD><TD><STRONG>37</STRONG></TD></TR> Innymi słowy, chcę zostawić jedynie dwie pierwsze kolumny i ostatnią(pozycja, nazwa i liczba punktów), z tym że tą ostatnią dodatkowo pogrubić. Kombinowałem z wyrażeniami regularnymi, ale kompletnie się poplątałem. Proszę zatem o pomoc w tej sprawie. Oprócz tego wyczytałem gdzieś w internecie, że lepiej stosować funkcję preg_replace zamiast ereg_replace, bo jest szybsza. Tylko że ten kawałek w ereg replace działa dobrze: $tabela=ereg_replace(' +','',$tabela); // usuwa wszystkie spacje, jeżeli jest ich więcej niż jedna w kupie a preg replace wywala: Warning: preg_replace() [function.preg-replace]: No ending delimiter '+' found in F:\Program Files\Abyss Web Server\htdocs\test.php on line 10 Co jest tego przyczyną? Użytkownik miszczu49 edytował ten post 16 maj 2008, 19:37 Bo preg_replace wymaga eee.. "start/end delimiter", czyli znaków początku i końca wyrażenia, np. / albo #. preg_replace('/\s+/', '', $tabela); ^ Dodatkowo zamiast usuwać same podwójne spacje (ten zapis był brzydki) usuwa każdy "biały znak" - tab, spację, nową linię itd. preg_replace('/<TR><TD>(\d*)<\/TD><TD>( .*)<\/TD>(.*)<TD>(\d*)<\/TD><\/TR> /Ui', '<TR><TD>$1</TD><TD>$2</TD><TD><STRONG> $4</STRONG></TD></TR>', $whatever); $tabela=preg_replace('/ +/', "", $tabela); // EDIT kolega napisal kiedy ja pisalem :( Użytkownik polasek edytował ten post 16 maj 2008, 20:35 W tym wyrażeniu coś chyba jest nie tak, bo właściwie nic mi nie usunęło. Jeszcze zobaczę czy to nie moja wina. // ach, moja wina, skasowałem to Ui z końca bo myślałem, że to nic nie znaczy i to literówka ;) // no, teraz śmiga :) Dzięki :) Użytkownik miszczu49 edytował ten post 16 maj 2008, 22:00 |
|||
Sitedesign by AltusUmbrae. |