Wyrażenie regularne - jak skonstruować?
Najlepsza odpowiedź Ogen Dogen 29.05.2017 21:14
Regex nie nadaje się do HTML'a, może co najwyżej do nieskomplikowanych, statycznych stron. Polecam wątek - https://stackoverflo...-contained-tags
Jeżeli już tak bardzo się uparłeś to spróbuj takiego wzorca: (1 grupa to wartość, której szukasz)
>(.*)<\/span>Przejdź do postu
Rivit
28.05.2017
Witam.
Na wstępie zaznaczę, że mam zerowe doświadczenie w dziedzinie wyrażeń regularnych. Chcę się tego nauczyć. Jednak program wymaga ode mnie zastosowania regexa
Jak zbudować wyrażenie, które wyciągnie mi tekst ze środka. Już pokazuje
>Wtorek</span> >T/s</span> >pn k</span>
Nie wiem w ogóle jak się do tego zabrać.
Trzeba mi tylko wzorzec
Dziękuję.
Ogen Dogen
28.05.2017
Domyślam się, że chcesz parsować HTML'a ? Jeśli tak to regex nie jest najlepszym wyborem, są gotowe biblioteki do parsowania HTML'a. Parser XML też powinien się nadać.
Napisz jaki język to postaram się coś doradzić, bo wnioskuje że pisząc w tym dziale nie chodzi o plugin AMXX ?
Rivit
29.05.2017
Trochę pogrzebałem. Dajmy na to mam przykładowy tekst:
<tbody> <tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes"> <td rowspan="2" style="width:23.45pt;border:solid windowtext 1.5pt; padding:0cm 0cm 0cm 0cm" valign="top" width="39"> <p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom: 0cm;margin-bottom:.0001pt;text-align:center;line-height:normal" align="center"><b><span style="font-size:9.0pt;font-family:"Times New Roman","serif";mso-fareast-font-family: "Times New Roman";mso-fareast-language:PL">Lekcja</span></b></p>
Do tego regex:
[>](.*)[<\/span>]
I to łapie mi to:
><b><span style="font-size:9.0pt;font-family:"Times New Roman","serif";mso-fareast-font-f
i
>Lek</span></b></p>
Jak go poprawić, żeby łapał poprawnie
Testuje sobie na tej stronce: https://regex101.com/
Co do parsera. Spoko, ale ja najpierw chce regexem, bo tak
Najlepsza odpowiedź
Ogen Dogen
29.05.2017
Regex nie nadaje się do HTML'a, może co najwyżej do nieskomplikowanych, statycznych stron. Polecam wątek - https://stackoverflo...-contained-tags
Jeżeli już tak bardzo się uparłeś to spróbuj takiego wzorca: (1 grupa to wartość, której szukasz)
>(.*)<\/span>
Rivit
30.05.2017
To statyczna strona. Sprawdzę i dam znać
Wątek jak najbardziej spoko. Wyrażenie regularne:
>(.*)<\/span>
Daje takie efekty:
>D</span> >B</span> >Sił/t</span> >MS</span> >B</span> >Ts/s</span> >D</span> >B</span>
Jak pozbyć się tego żeby zostało tylko to co wewnątrz?
Ogen Dogen
30.05.2017
Jak pozbyć się tego żeby zostało tylko to co wewnątrz?
(1 grupa to wartość, której szukasz)