Как мога да разбера дали определен знак в QString е буква или препинателен знак?

Как мога да разбера дали определен знак в QString е буква или препинателен знак на който и да е език?

Например искам да намеря . в gâteau., но не и â.


person castors33    schedule 19.04.2012    source източник
comment
На какъв език работите?   -  person Shaikh Farooque    schedule 19.04.2012


Отговори (2)


Опитвам

str.at(i).isLetter()

Ще върне true за класовете на unicode Letter_Uppercase/Lowercase/Titlecase/Modifier/Other. Което можете да видите тук:

http://www.sql-und-xml.de/unicode-database/lu.html

http://www.sql-und-xml.de/unicode-database/ll.html

http://www.sql-und-xml.de/unicode-database/lt.html

http://www.sql-und-xml.de/unicode-database/lm.html

http://www.sql-und-xml.de/unicode-database/lo.html

person DerManu    schedule 19.04.2012

Можете да получите QChar от QString с помощта на at(), а QChar има функция isLetter(). Така че искате нещо като:

QString myString;
if (myString.at(3).isLetter()) {
   qDebug() << "letter number 4 in the string is a letter";
}
person Wes Hardaker    schedule 19.04.2012