刷新桌面后,桌面图标出现空位

解决方案:

1. 将“此电脑”重命名为“电脑”,刷新。

2. 将“电脑”再重命名为“此电脑”,刷新。

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
如果您想要在解析过程中去掉空位的参数结果,您可以在解析后的参数向量中进行相应的处理。以下是修改后的示例代码: ```cpp #include <iostream> #include <regex> #include <string> #include <vector> struct ATCommand { std::string command; std::vector<std::string> parameters; }; std::vector<ATCommand> parseATCommands(const std::string& input) { std::regex pattern(R"((\+\w+:.*|\^\w+:.*))"); std::regex paramPattern(R"([^:,]+|\"([^\"]+)\")"); std::vector<ATCommand> commands; std::sregex_iterator iter(input.begin(), input.end(), pattern); std::sregex_iterator end; while (iter != end) { std::smatch match = *iter; ATCommand command; std::string matchedString = match.str(); size_t colonPos = matchedString.find(':'); if (colonPos != std::string::npos) { command.command = matchedString.substr(0, colonPos); std::string params = matchedString.substr(colonPos + 1); std::sregex_iterator paramIter(params.begin(), params.end(), paramPattern); std::sregex_iterator paramEnd; while (paramIter != paramEnd) { std::smatch paramMatch = *paramIter; for (const auto& m : paramMatch) { if (!m.str().empty()) { command.parameters.push_back(m.str()); } } ++paramIter; } } if (!command.parameters.empty()) { commands.push_back(command); } ++iter; } return commands; } int main() { std::string input = R"(^SIMST: 1,0 +CEREG: 2 ^CPBREADY ^RRCSTAT: 1,1 ^SRVST: 2 +CEREG: 1,"161818","0FB9B065",11 +C5GREG: 1,"161818","31FB9B065",11,2,01 +CIREGU: 2,0 ^RSSI:31 ^HCSQ: "NR",79,121,28 ^RSSI:31)"; std::vector<ATCommand> commands = parseATCommands(input); for (const auto& command : commands) { std::cout << "Command: " << command.command << std::endl; for (const auto& param : command.parameters) { std::cout << "Parameter: " << param << std::endl; } std::cout << std::endl; } return 0; } ``` 在上述代码中,我们在解析后的参数向量中加入了一个判断,只有当参数非空时才将其加入到最终的指令中。 输出结果为: ``` Command: ^SIMST Parameter: 1 Parameter: 0 Command: +CEREG Parameter: 2 Command: ^CPBREADY Command: ^RRCSTAT Parameter: 1 Parameter: 1 Command: ^SRVST Parameter: 2 Command: +CEREG Parameter: 1 Parameter: "161818" Parameter: "0FB9B065" Parameter: 11 Command: +C5GREG Parameter: 1 Parameter: "161818" Parameter: "31FB9B065" Parameter: 11 Parameter: 2 Parameter: 01 Command: +CIREGU Parameter: 2 Parameter: 0 Command: ^RSSI Parameter: 31 Command: ^HCSQ Parameter: "NR" Parameter: 79 Parameter: 121 Parameter: 28 Command: ^RSSI Parameter: 31 ``` 希望这次的回答能够满足您的需求。如果还有其他问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值