![]() |
String gegen XSD-Vorgabe prüfen
Hallo,
ich habe etliches inzwischen gelesen, komme aber irgendwie zu keiner (einfachen) Lösung: Ich habe einen x-beliebigen String, der gegen ein Format aus einer XSD-Datei auf Gültigkeit geprüft werden soll. z.B. passt '1234567 D4321Ax' zu folgender Vorgabe : <xsd:pattern value="[a-zA-Z0-9$&%\*\+\-/]{1,12}" /> Gibt es da irgend etwas was fertiges was ohne zusätzliche DLL's auskommt, die auf dem Rechner des Anwenders eventuell gar nicht oder veraltet vorliegen, also reiner Delphi-Code? Ciao Stefan |
AW: String gegen XSD-Vorgabe prüfen
Das sieht mir nach 'nem regulären Ausdruck aus:
![]() Das sollte mit Delphimitteln gehen: Zeichenfolge gegen den regulären Ausdruck aus value prüfen. |
AW: String gegen XSD-Vorgabe prüfen
das verlinkte Beispiel funktioniert leider nicht!
Da kann ich "12345 6789" eingeben und es wird als gültig erkannt obwohl in diesem Beispiel "[a-zA-Z0-9$&%\*\+\-/]{1,12}" Leerzeichen verboten sind. Ebenso wird die Längenangabe ignoriert, ein "1234567890123456789" wird ebenfalls als gültig erkannt! Ciao Stefan |
AW: String gegen XSD-Vorgabe prüfen
Zitat:
Zitat:
![]() Du prüfst nur ob in dem String etwas mit der Maske übereinstimmt und nicht ob es der ganze String ist. In diesem Fall kannst du ganz einfach ^ vor und $ hinter das Suchmuster einfügen, also "^[a-zA-Z0-9$&%\*\+\-/]{1,12}$" . |
AW: String gegen XSD-Vorgabe prüfen
Danke, danke, danke!
Genau so ist es und funktioniert jetzt! Ciao Stefan |
AW: String gegen XSD-Vorgabe prüfen
Muss der reguläre Ausdruck im Programm bei der Ausführung tatsächlich ^[a-zA-Z0-9$&%\*\+\-/]{1,12}$ sein oder nicht eher ^[a-zA-Z0-9$&%\*\+\-/]{1,12}$?
|
AW: String gegen XSD-Vorgabe prüfen
im RegEx-Ausdruck natürlich nur &
das Andere ist die Codierung in der XSD (XML), da & dort ja ein Steuerzeichen ist. Wenn du diesen String aber mit einer XML-Komponente ausliest, dann decodiert sie es automatisch. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 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