¨ (nicht ") und · sind etwas Speziell.
Bei Allem was nicht
ASCII ist (#0...#127), muß man etwas aufpassen.
In welcher Codierung wurde die
PAS gespeichert?
UTF-8 mit BOM wäre angebracht.
Oder du codierrst im Text es entsprechend
const B='( |''|[,-\.]|[A-Z]|[`-z]|~|'#168'|´|'#183'...';
In unserer deutschen Codepage / Font liegen diese Zeichen im 8. Bit (bis #255).
Auch kommt es im Delphi darauf an, wie etwas interpretert wird, vor allem bezüglich
ANSI und
Unicode.
Delphi-Quellcode:
C := '
·';
C := #183;
C := #$87;
C := #$0087;
// ja, es sieht gleich aus, wie das davor, aber der Compiler interpretiert das eine als ANSI und das andere als Unicode.
// Das Eine wird also bei Übergabe an einen String/UnicodeString zur Laufzeit jedes Mal mit "aktueller" Codepage konvertiert und der andere Wert wird direkt reingeschrieben.
// Führende Nullen mögen mathematisch egal sein, aber logisch sind sie nicht immer irrelevant.
Besser wäre es diese Zeichen im höheren Unicoderaum zu suchen und jenen Code zu verwenden.
Im für deutsche Codepage geht es, aber z.B. in einem russischen oder chinesischen Windows (Codepage) sind an der Stelle andere Zeichen.
Außer es geht wirklich um den "ByteCode" und nicht um die optische
Darstellung Repräsentation. (hier ist dann der richtig codierte Code besser, anstatt dem Zeichen)