QRegExp: Nur ASCII-Zeichen?

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
Benutzeravatar
microkernel
User
Beiträge: 271
Registriert: Mittwoch 10. Juni 2009, 17:27
Wohnort: Frankfurt
Kontaktdaten:

Hallo,
wie lautet der plattern für QRegExp wenn ich nur ASCII Zeichen erlauben will?
Benutzeravatar
DaMutz
User
Beiträge: 202
Registriert: Freitag 31. Oktober 2008, 17:25

Was sind für dich ASCII Zeichen? a-z, A-Z, 0-9 und den Punkt?
Dann wäre es:

Code: Alles auswählen

[a-zA-Z0-9.]
Oder sonst kannst du den Buchstaben durch ord() in eine Zahl wandeln und falls die Zahl > 127 oder die Funktion eine Exception wirft, dann ist es kein ASCII Zeichen.
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

ASCII = Zeichen von 0 bis 127. In Python würde dies `[\\000-\\177]` gehen. Vielleicht bei Qt ja ebenfalls.

Stefan
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

@Microkernel,
DaMutz hat grundsätzlich recht, aber regular Expressions werden
-in Python anders behandelt als
- in QT
Die Qt-Klasse ist dokumentiert in qt4-assistent
unter index QRegExp
Da sind auch Pogrammbeispiele bei in Cpp
Regex wird
hier dokumentiert:http://www.python.org/doc//current/howto/regex.html
Die genaue URL bei Qt kann ich nicht sagen, aber den Assistent hast Du?
Guude!
Fritz 8)
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Es gibt eine sehr ausführliche Dokumentation http://doc.trolltech.com/4.6/qregexp.html, wenn ich die richtig verstehe sollte '[\\0000-\\0177]*' funktionieren.
Benutzeravatar
microkernel
User
Beiträge: 271
Registriert: Mittwoch 10. Juni 2009, 17:27
Wohnort: Frankfurt
Kontaktdaten:

Vielen Dank!
Das Plattern von sma hat es gebracht. Das Qt und Python unterschiedliche Expression Syntaxe haben war mich schon bewusst. Das war ja auch der Grund warum ich fragte ;)
Antworten