![]() |
Re: HTML2Text - noch buggy?
Hi bigg,
immer wenn ein Quelltext monotone Passagen aufweist, wie deiner die endlose If-Strecke, dann macht es Sinn nach einer Alternative zu suchen. Für deinen Zweck wäre ein Dictionary eine gute Lösung und die StringList bietet dir über die Objects[] sogar noch die Lookup-Funktionalität. Wenn du die vom W3 Consortium herausgegebene ![]()
Delphi-Quellcode:
dann kannst du zumindest den Code für die Übersetzung der named entities deutlich übersichtlicher gestalten.
sl.AddObject('quot', Pointer(34));
Freundliche Grüße vom marabu PS: HTML2Text ist vielleicht etwas irreführend, denn es wird ja kein markup code in Text umgewandelt. Und vergiss nicht, dass character entities auch durch " oder & #34; repräsentiert werden können. |
Re: HTML2Text - noch buggy?
Zitat:
|
Re: HTML2Text - noch buggy?
@marabu:
Da gebe ich dir vollkommen recht, so könnte man die Liste durchlaufen und gegenfalls abbrechen, sofern ein Sonderzeichen gefunden wurde. @turbo: Ja, ist ein Fehler des Parsers. |
Re: HTML2Text - noch buggy?
Bitte die Liste NICHT durchlaufen!
Delphi-Quellcode:
marabu
var
slDict: TStringList; s: string; index: integer; begin s := 'quot'; slDict.AddObject(s, Pointer(34)); index := slDict.IndexOfName(s); if index < 0 then CheckForCodedEntity(s) else s := Chr(Integer(slDict.Objects[index])); end; PS: Du denkst bestimmt daran, dass du slDict.CaseSensitive auf true setzen musst, stimmts? |
Re: HTML2Text - noch buggy?
moin marabu,
Zitat:
Und warum sollte ich es so, wie in deinem Beispiel machen? Wo ist da der Vorteil gegenüber einer normalen Liste? |
Re: HTML2Text - noch buggy?
Zitat:
Sorry, wenn ich etwas "hart" aufgetreten bin, aber mir ist halt aufgefallen, dass zu beiden Kritiken nichts geantwortet/getan wurde ;) |
Re: HTML2Text - noch buggy?
Zitat:
Zitat:
marabu |
Re: HTML2Text - noch buggy?
Es gibt auch die Form † (das Beispiel hier steht für das Zeichen †) für Character Entities. Entities mit Zahlen bis 255 stehen für Zeichen aus dem ASCII-Zeichensatz, alles darüber für Zeichen aus dem Unicode-Zeichensatz.
edit: So wies aussieht hat escaped das Board hier die numerischen Entities nicht. :evil: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz