Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Я всё время замечаю, как люди делают ошибку, пытаясь распарсить XML или HTML регулярными выражениями. Вот некоторые из причин того, что парсить XML или HTML сложно:
- Люди хотели бы рассматривать файл как последовательность строк, но вот это -- правильный кусок:
- <tag
- attr="5"
- />
- Люди хотели бы считать < или <tag началом тега, но штуки наподобие вот такого правильны и попадаются в реальности:
- <img src="imgtag.gif" alt="<img>" />
- Люди часто хотели бы поставить открывающие теги в соответствие с закрывающими, но XML и HTML разрешают тегам содержать самих себя (с чем традиционные, старые регулярные выражения вообще не могут справиться):
- <span id="outer"><span id="inner">foo</span></span>
- Люди часто хотели бы найти содержимое документа (например. знаменитая задача "найдите все телефоны на этой странице"), но данные могут содержать разметку (даже если они выглядят обычно при просмотре):
- <span class="phonenum">(<span class="area code">703</span>)
- <span class="prefix">348</span>-<span class="linenum">3020</span></span>
- Комментарии имеют право содержать неверно отформатированные или неполные теги:
- <a href="foo">foo</a>
- <!-- FIXME:
- <a href="
- -->
- <a href="bar">bar</a>
- Какие ещё опасности вы знаете?
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement