Select 第一个字符串使用 QRegularExpression
Select first string using QRegularExpression
如何使用 QRegularExpression
获取第一个字符串("firstStr"
对于下面的示例)
QString readCmdOutput = "";
/* readCmdOutput = "firstStr\secondStr"; or
readCmdOutput = "firstStr
secondStr
"
*/
readCmdOutput = QString::fromLocal8Bit(myProcess->readAllStandardOutput());
QRegularExpression re("REGEXPRESSION");
QRegularExpressionMatch match = re.match(readCmdOutput);
if (match.hasMatch()) {
QString matched2 = match2.captured(0); // has to contain "firstStr"
}
正确的正则表达式是:
QRegularExpression re("[^\n\\]*");
此正则表达式匹配不包含换行符 (\n) 或反斜杠 (\) 的每个字符序列。请注意,您必须转义所有反斜杠。
有关详细信息,请参阅 QRegularExpression。
如何使用 QRegularExpression
获取第一个字符串("firstStr"
对于下面的示例)
QString readCmdOutput = "";
/* readCmdOutput = "firstStr\secondStr"; or
readCmdOutput = "firstStr
secondStr
"
*/
readCmdOutput = QString::fromLocal8Bit(myProcess->readAllStandardOutput());
QRegularExpression re("REGEXPRESSION");
QRegularExpressionMatch match = re.match(readCmdOutput);
if (match.hasMatch()) {
QString matched2 = match2.captured(0); // has to contain "firstStr"
}
正确的正则表达式是:
QRegularExpression re("[^\n\\]*");
此正则表达式匹配不包含换行符 (\n) 或反斜杠 (\) 的每个字符序列。请注意,您必须转义所有反斜杠。 有关详细信息,请参阅 QRegularExpression。