QLineEditのテキストを正規表現で検証したいと思います。それはaからzまでの文字とAからZとトルコ語の文字(ğüşöçİĞÜŞÖÇ)と0から9までの数字を許可する必要があります。私の問題について調べて、2つの解決策を見つけましたが、どちらも私のために働いていませんでした。以下はQt正規表現のトルコ文字
は2つの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]+$");
どちらも上記reqular式のいずれかを検証することができます一つの解決策では、「正規表現のトルコ文字を含む」と言い、他方ではそれが「トルコ文字のユニコードを使用する」と言います名前「İSMAİL」。 また、トルコ文字( 'ğüşöçİĞÜŞÖÇ')のみを含むテキストを試しましたが、検証することはできません。 両方のテキストから 'İ'文字を削除すると、その文字を検証できます。私は問題が 'İ'文字に関連していると思う。
どうすれば問題を解決できますか?
注:このプロジェクトではQt 4.6.3を使用しています。
オリジナルの提案を見ると、試したすべての正規表現マッチャーで '^ [a-zA-Z0-9ğüşöçİĞÜŞ] + $'がうまく動作します(例:http://www.regex101.com/r/gR2xB2) 。問題はどこにもないと確信していますか? – mart1n