Разбор амперсандов с экспатом не удается. Неверный токен? - PullRequest
1 голос
/ 28 июля 2011

Я получаю ошибку экспата при разборе только определенных символов. Другой HTML-код разбирается просто отлично. Я использую UTF-8 библиотеку expat libexpatMT.lib , и я работаю с char и std :: string в оболочке. Не используются широкие символы и т. Д.

// The ampersand leads to: Expat error: *not well-formed (invalid token)*
<a href="http://www.myurl.com?a=b&c=d">Link</a>
<span>Tom & Jerry</span>
<h1>K&auml;se</h1>

Я запутался, почему амперсанд может быть здесь недействительным токеном, поскольку он используется даже в HTML-сущностях, таких как &amp; Замена амперсандов &amp; или пользовательских проставок также не работает.

Есть предложения? Проблема с амперсандом здесь.

1 Ответ

3 голосов
/ 28 июля 2011

В XML вы избегаете амперсанда, даже в сущностях.Таким образом, допустимое значение <a href="http://www.myurl.com?a=b&amp;c=d">Link</a>
Правильные веб-страницы делают это.Браузеры вполне терпимы к совершенной вами ошибке.

...