QRegex 不识别"n"

QRegex not identifing " "

本文关键字:识别 QRegex      更新时间:2023-10-16

我的程序从comandline获取配置。 通信是这样的:"mapPath=Some_Path_Over_HerepluginsPath=Other_Path_Over_Here"请注意中间和结尾的""。

我的科斯是:

QString config("mapPath=Some_Path_Over_HerenpluginsPath=Other_Path_Over_Heren")
QRegExp reg("mapPath=(.*)\npluginsDir=(.*)\n");

但是当我写的时候

reg.indexIn(config)

结果为 -1。

重要的是要说我的程序既适用于linux,也适用于Windows。我认为导致问题的是""。我不知道如何处理它。请帮忙?

>config包含两个换行符(ASCII 0x0A,以C++文字形式写为n),但您试图将它们与正则表达式n匹配(两个字符,ASCII 0x5C 0x6E,用C++文字写成\n)。这行不通 - 将正则表达式也更改为 n

请记住,将n转换为换行符是C++解析器的工作;正则表达式不会这样做。