从全名QString中获取名字和姓氏



我有一个QT项目,我从用户输入中获得作为QString变量fullName的全名。我想通过从fullName中提取名字(firstName)和姓氏(surname),将它们存储在它们自己的QString变量中。

用户输入最终也可能添加他们的中间名,所以我需要处理所有类似的示例,例如,用户输入:Barry Michael Doyle必须给firstName Barry的值,给surname Doyle的值。

我不太擅长QString操作,因为我最近才开始使用Qt库。我很感激能得到的一切帮助。

Qt关于QString的文档非常全面,并且有很多关于如何使用它的示例。您可以在这里找到它:http://doc.qt.io/qt-5/qstring.html

一般来说,解析一个可能有错误的输入字符串是很困难的("BarryDoyle"的输入字符串的预期行为是什么?"Barrydoy le"呢?)

对于使用空格字符拆分字符串的简单情况,您可以查看QString::split(http://doc.qt.io/qt-5/qstring.html#split)

QString str = "Barry Michael Boyle"
QStringList list_str = str.split(" ");
QString first = list_str.first();
QString last = list_str.back();

最新更新