• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[DOWOLNY JĘZYK] Sprawdzanie tekstu, pętla.

Cloud VPS
0 głosów
532 wizyt
pytanie zadane 19 kwietnia 2016 w HTML i CSS przez GaCeL Dyskutant (7,500 p.)
edycja 19 kwietnia 2016 przez GaCeL

Hej, pomoże ktoś zrobić funkcję dla której podaje się tekst typu jaki jest poniżej:

<tbody>
<tr>
		<td>12:30 AM</td>
		<td>27259_</td>
		<td></td>
		<td></td>
		<td></td>
		<td class="td-val ball-1">6</td>
		<td class="td-val ball-8">11</td>
		<td class="td-val ball-8">11</td>
		<td class="td-val ball-1">4</td>
		<td class="td-val ball-8">8</td>
		<td class="td-val ball-8">12</td>
		<td class="td-val ball-8">8</td>
	</tr>
	<tr>
		<td>12:00 AM</td>
		<td>27249_</td>
		<td></td>
		<td></td>
		<td></td>
		<td class="td-val ball-1">6</td>
		<td class="td-val ball-8">11</td>
		<td class="td-val ball-8">11</td>
		<td class="td-val ball-1">4</td>
		<td class="td-val ball-8">8</td>
		<td class="td-val ball-0">12</td>
		<td class="td-val ball-5">8</td>
	</tr>
</tbody>

I teraz jeżeli znajdzie <td class="td-val ball-0"> to cofa się o 4 znaczniki <td> i odczytuje wartość pomiędzy <td></td> i jeżeli jest to liczba 3 to cofa się jeszcze 5 znaczników <td> i odczytuje wartość pomiędzy <td></td> i jeżeli warunki są spełnione, czyli:

  1. <td class="td-val ball-0"> Znalazło
  2. Cofa się o 4 <td> do tyłu i znalazło liczbę 3 pomiędzy <td></td>
  3. Cofa się jeszcze o 5 <td> do tyłu i znalazło liczbę 10 pomiędzy <td></td>
  4. Wypisuje na ekranie "ok"

2 odpowiedzi

+1 głos
odpowiedź 19 kwietnia 2016 przez Schizohatter Nałogowiec (39,600 p.)
:O

To chyba masz coś źle zaprojektowane. W ogóle kto przesyła dane w postaci HTML?
komentarz 19 kwietnia 2016 przez GaCeL Dyskutant (7,500 p.)
Ja, to nie ma być do jakiejś strony tylko do własnego użytku w celach edukacyjnych.
komentarz 19 kwietnia 2016 przez Schizohatter Nałogowiec (39,600 p.)
To potrzebujesz (a w każdym razie najłatwiej będzie) użyć jakiegoś parsera HTML.

Np. w przypadku Ruby możesz użyć hpricot lub nokogiri, ale ogólnie to polecam wpisać w Google:

"<język> html parser"
2
komentarz 19 kwietnia 2016 przez Comandeer Guru (607,100 p.)
Schizohatter nie sądzisz, że HTML parser to po prostu… implementacja DOM? :>
komentarz 19 kwietnia 2016 przez Schizohatter Nałogowiec (39,600 p.)
Sądzę, natomiast osobiście wolę hasło parser HTML. Tak jak mogę mieć parser różnego typu formatów - tak i HTML :D

Zresztą CC zawsze używał słowa "parser" i jakoś mi to tak weszło do głowy.

Ale jak wiadomo - chodzi o DOM.
komentarz 19 kwietnia 2016 przez Comandeer Guru (607,100 p.)

No i tutaj jest właśnie problem, bo to hasło dla PHP zwróci Simple HTML DOM Parser, który jest biblioteką powstałą za czasów PHP4, korzystającą z regexów i będącą 10 razy wolniejszą od natywnej implementacji DOM w PHP (nie wspominając wadliwego silnika selektorów…). Stąd zawsze pushuje nazwę DOM, bo w PHP jest to równoznaczne z natywnym modułem z dodatkiem potężnego XPath.

komentarz 19 kwietnia 2016 przez Schizohatter Nałogowiec (39,600 p.)
O, a to jest ciekawe.
+1 głos
odpowiedź 19 kwietnia 2016 przez Comandeer Guru (607,100 p.)
Brzmi po prostu jak DOM… Implementacje masz w JS, PHP, Pythonie… w sumie chyba we wszystkich "normalnych" językach.

Podobne pytania

0 głosów
3 odpowiedzi 3,996 wizyt
0 głosów
1 odpowiedź 3,237 wizyt
0 głosów
2 odpowiedzi 3,538 wizyt

93,483 zapytań

142,416 odpowiedzi

322,762 komentarzy

62,895 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...