Grundsätzlich mag ich die gleichen wie here tun, die in Python getan. Ich möchte alle selbst geschlossenen Elemente durch die lange Syntax ersetzen.Schließen offene XML-Tags mit regex
Beispiel
<iframe src="http://example.com/thing"/>
wird
<iframe src="http://example.com/thing"></iframe>
vollständiges Beispiel:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="/sample.css">
<title></title>
<script type="text/javascript" src="/swfobject.js">
//void
</script>
<script type="text/javascript" language="JavaScript" src="/generate.js">
//void
</script>
<script type="text/javascript" language="JavaScript" src="/prototype.js">
//void
</script>
</head>
<body id="mediaPlayer" style="margin:0;padding:0;">
<script type="text/javascript">
swfobject.registerObject('id_G12564763');
function getFlashObject() {
var object;
if (navigator.appName == 'Microsoft Internet Explorer' || navigator.userAgent.indexOf("Chrome")!=-1)
{
object = document.getElementById('id_G12564763');
}
else
{
object = document['flash_id_G12564763'];
}
return object;
}
</script>
</body>
</html>
Beachten Sie, dass http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454 die Umkehrung dieser Operation beschreibt. – Borealid
Borealid, ich bin mir dessen bewusst. Kannst du das mit einem Parser beheben? Soweit ich mich erinnere, muss das XML wohlgeformt sein, bevor es mit einem Parser analysiert wird. Genau das muss ich tun. Ich habe Tidy ausprobiert, aber das hat nicht funktioniert und das Projekt wird nicht mehr gepflegt. Dies ist eine kleine HTML-Ausgabe, die einfach eine Reihe von Javascript-Includes und das Objekt Embed Tag (Flash) haben wird. – user3111525