Wie kann ich doppelte Anführungszeichen in XML-Attributwerten umgehen?

Antworten:

223

Sie können verwenden "

Sachin Shanbhag
quelle
3
Explizite und längere Namenskonventionen sind besser als Akronyme oder verkürzte, wenn Variablen, Funktionen, Attribute usw. benannt werden. Ich werde jederzeit Klarheit über die Kürze schaffen - ist meine unaufgeforderte Meinung.
Daniel Sokolowski
1
Ich stimme Daniel zu. Die Kürze erspart Ihnen möglicherweise 1 Sekunde beim Tippen, aber dann müssen die Leute 10 Minuten damit verbringen, herauszufinden, was los ist.
NL3294
@ Daniel Sokolowski: Worauf beziehen Sie sich? Fehlt ein Kontext (z. B. gelöschte Kommentare)?
Peter Mortensen
Muss @PeterMortensen sein, ich vergesse jetzt, das war vor fast 7 Jahren :)
Daniel Sokolowski
54

Aus der XML-Spezifikation :

Damit Attributwerte sowohl einfache als auch doppelte Anführungszeichen enthalten können, kann das Apostroph- oder einfache Anführungszeichen (') als "& apos;" und das doppelte Anführungszeichen (") als" & quot; "dargestellt werden.

Wim Coenen
quelle
17

Ein doppeltes Anführungszeichen ( ") kann als maskiert werden ", aber hier ist der Rest der Geschichte ...

Das doppelte Anführungszeichen muss in diesem Zusammenhang maskiert werden:

  • In XML-Attributen, die durch doppelte Anführungszeichen begrenzt sind:

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

Doppelte Anführungszeichen müssen in den meisten Kontexten nicht maskiert werden:

  • In XML-Textinhalten:

    <NoEscapeNeeded>He said, "Don't quote me."</NoEscapeNeeded>
  • In XML-Attributen, die durch einfache Anführungszeichen ( ') begrenzt sind:

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

    In ähnlicher Weise 'erfordert ( ) kein Escapezeichen, wenn ( ") für die Attributwertbegrenzer verwendet wird:

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

Siehe auch

kjhughes
quelle
8

Die String-Konvertierungsseite auf der Coder's Toolbox- Site ist praktisch, um mehr als eine kleine Menge HTML- oder XML-Code zu codieren und als Wert in ein XML-Element aufzunehmen.

Kenny Evitt
quelle