Voglio convalidare il testo di QLineEdit con un'espressione regolare. Dovrebbe consentire i caratteri dalla A alla Z più dalla A alla Z più i caratteri turchi (ğüşöçİĞÜŞÖÇ) più i numeri da 0 a 9. Ho cercato su Google il mio problema e ho trovato due soluzioni, ma nessuna ha funzionato per me. In una soluzione si dice "includere caratteri turchi in regexp" e in altro si dice "uso unicodes di personaggi turchi"Qt Caratteri turchi nelle espressioni regolari
Qui di seguito sono due espressioni reqular
QRegExp exp = QRegExp("^[a-zA-Z0-9ğüşöçİĞÜŞÖÇ]+$");
QRegExp exp = QRegExp("^[a-zA-Z0-9\u00E7\u011F\u0131\u015F\u00F6\u00FC\u00C7\u011E\u0130\u015E\u00D6\u00DC]+$");
nessuno di espressioni reqular sopra può convalidare il chiama "İSMAİL". Ho anche provato un testo che contiene solo caratteri turchi ('ğüşöçİĞÜŞÖÇ') ma non può essere convalidato. Quando rimuovo il carattere 'İ' da entrambi i testi, possono essere convalidati. Immagino che il problema possa essere correlato al carattere "İ".
Come posso risolvere il problema?
Nota: nel nostro progetto utilizziamo Qt 4.6.3.
Osservando il tuo suggerimento originale, '^ [a-zA-Z0-9ğüööçİĞÜŞÖÇ] + $' funziona bene per me in tutti i regex matcher che ho provato (ad esempio: http://www.regex101.com/r/gR2xB2) . Sei sicuro che il problema non sia altrove? – mart1n