如何确定 QString 中的特定字符是否是任何语言的字母或标点符号?
例如,我想找到.
ingâteau.
但不是â
.
尝试
str.at(i).isLetter()
对于 unicode 类 Letter_Uppercase/Lowercase/Titlecase/Modifier/Other,它将返回 true。你可以在这里看到:
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
您可以使用 at() 从 QString 中获取 QChar,并且 QChar 具有 isLetter() 函数。因此,你想要这样的东西:
QString myString;
if (myString.at(3).isLetter()) {
qDebug() << "letter number 4 in the string is a letter";
}