我有一个QT项目,我从用户输入获取全名作为QString变量fullName
。我想将名字(firstName
)和姓氏(surname
)存储在自己的QString变量中,方法是从fullName
中提取它们。
用户输入最终可能会添加他们的中间名,所以我需要为所有类似的例子工作,例如。用户输入:Barry Michael Doyle
必须将firstName
的值Barry
和surname
的值Doyle
赋予{{1}}。
我不太擅长QString操作,因为我最近才开始使用Qt库。我很感激能得到的所有帮助。
答案 0 :(得分:2)
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();