Alexander (HH): Regulärer Ausdruck Funktion unklar

Beitrag lesen

Moin Moin!

folgender Regulärer Ausdruck entfernt XML Kommentare:
(?s)<!--.*?-->

Öm, nö.

Erstmal matcht der nur Dinge, die wie Kommentare in XML aussehen, aber entfernt sie nicht.

Zweitens matcht der auch Dinge wie "<!-- -- -->". Das ist aber kein gültiger XML-Kommentar.

Und drittens matcht der Ausdruck auch stinknormale Strings in CDATA-Sektionen, wenn sie nach Kommentaren aussehen.

  
<?xml version="1.0" encoding="utf-8" ?>  
<root>  
<!-- Kommentar -->  
<foo><![CDATA[ <!-- kein Kommentar --> ]]></foo>  
</root>  

Der hintere Teil trifft meiner Meinung nach non-greedy einzeilige Kommentare.

Wie kommst Du auf "einzeilig"?

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".