Как избежать двойных кавычек в значениях атрибутов XML?



из следующих испытаний



<tag attr=""">
<tag attr="<![CDATA["]]>">
<tag attr='"'>


только последний работает для синтаксического анализатора XML, который я использую здесь.
Есть ли другая альтернатива?

621   4  
xml

4 ответов:

можно использовать &quot;

с XML spec:

разрешить содержать значения атрибутов как одинарные, так и двойные кавычки, Апостроф или одинарные кавычки (') может быть представлено как "'", и символ двойной кавычки ( " ) как """.

The преобразования строки на странице набор инструментов Кодера сайт удобен для кодирования более чем небольшого количества HTML или XML-кода для включения в качестве значения в XML-элемент.

символ двойной кавычки (")можете быть экранированы как &quot;, но вот остальная часть истории...

двойной кавычки должны быть экранированы в этом контексте:

  • в атрибутах XML, разделенных двойными кавычками:

    <EscapeNeeded name="Pete &quot;Maverick&quot; Mitchell"/>
    

двойной кавычки не нужно быть экранированы в большинстве контекстов:

  • в текстовом XML содержание:

    <NoEscapeNeeded>He said, "Don't quote me."</NoEscapeNeeded>
    
  • в атрибутах XML, разделенных одинарными кавычками ('):

    <NoEscapeNeeded name='Pete "Maverick" Mitchell'/>
    

    аналогично, (') не требуют побега, если (") используются для разделителей значений атрибутов:

    <NoEscapeNeeded name="Pete 'Maverick' Mitchell"/>
    

см. также

Comments

    Ничего не найдено.