gpt4 book ai didi

c++ - QRegexp 未识别 "\n"

转载 作者:太空宇宙 更新时间:2023-11-04 14:00:12 25 4
gpt4 key购买 nike

我的程序从命令行获取配置。命令行是这样的:“mapPath=Some_Path_Over_Here\npluginsPath=Other_Path_Over_Here\n”请注意中间和最后的“\n”。

我的想法是:

QString config("mapPath=Some_Path_Over_Here\npluginsPath=Other_Path_Over_Here\n")
QRegExp reg("mapPath=(.*)\\npluginsDir=(.*)\\n");

但是当我写的时候

reg.indexIn(config)

结果是-1。

重要的是要说我的程序既适用于 linux 也适用于 windows。我认为导致问题的原因是“\n”。我不知道如何处理。请帮忙?

最佳答案

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

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

关于c++ - QRegexp 未识别 "\n",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19631515/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com