Czy za parsowanie html'a regexami idzie się do piekła? Jeśli tak, to jak mogę tego uniknąć?
- Rejestracja:ponad 14 lat
- Ostatnio:prawie 9 lat
- Postów:34
- Rejestracja:około 18 lat
- Ostatnio:około rok
Tak. Parsowanie html za pomocą wyrażeń regularnych jest krótko mówiąc złe. Natomiast należy rozgraniczyć parsowanie tekstu (którym html też jest) od parsowania dokumentu html.
Bardzo często NIE musimy go parsować, tj. poznawać hierarchii elementów, poznawać kontekstu, w którym się znajdują i tak dalej. Osiągnięcie tego korzystając głównie z samych wyrażeń regularnych jest nietrywialne i upierdliwe nawet na tych nowszych i bardziej rozbudowanych silnikach regexpów z zero-width assertions. Kolejny, bardzo ważny problem to wysoki ułamek błędnych konstrukcji html w przeciętnym dokumencie. Wzięcie na to poprawki w wyrażeniach regularnych niesamowicie je komplikuje.
W C/C++ możesz skorzystać z tidy, a w C++/CLI z html agility pack.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.