这段代码会越界,百思不得七姐(过了N久时间 之后^^)原来是把i写成了1  --!

//#if 0
QRegExp re1("AT+CGATT?");
QRegExp re2("AT+CGATT=([0-9])");
if (re1.exactMatch(list[])) {
qDebug()<<"list[i]"<<list[i];
}
else if (re2.exactMatch(list[i])) {
// set
int state;
bool ok;
state = re2.cap().toInt(&ok);
if (ok && state >= && state <= ) {
ue->cgatt.state = state;
response.append("OK");
}
else
response.append("ERROR");
}
//#endif

这个for + switch 的用法回味好久之后还是美

           QRegExp ref1("AT+COPS?");
QRegExp ref2("AT+COPS=([0-9])(.*)"); //[<mode>[,<format> [,<oper>[,<AcT>]]]]
if (ref1.exactMatch(list[i]))
response.append("+COPS:")
.append(QString::number(ue->cops.mode)).append(",")
.append(QString::number(ue->cops.format)).append(",")
.append(ue->cops.oper_numeric).append(",")
.append(QString::number(ue->cops.act)).append("\r\nOK");
else if (ref2.exactMatch(list[i]))
{
ue->cops.mode = ref2.cap().toInt();
if (!ref2.cap().isEmpty()) {
QStringList pa;
pa = ref2.cap().split(",");
for (i = ; i < pa.size(); i++) {
switch (i) {
case : ue->cops.format = pa.at(i).toInt(); break;
case : strcpy(ue->cops.oper_long, pa.at(i).toAscii().constData()); break;
case : ue->cops.act = pa.at(i).toInt(); break;
default:
break;
}
}
}

由于 win 没有实现loopback   so wireshock cannot capture  raw sockets .

alternative tool : RawCAp  easily to use .

如果有人能在我读研的第一天跟我讲万物在维基,也就不愁会发几个AAA的论文了。

三步曲,,,,./ configure  make make install

如果程序員真的愛一個語言,怎能不害怕有一天會忘記它

而我們又必須接受時間的事實  於是長大了 寂寞就是沒有機會再使用它

比沒有接觸過電腦時還要寂寞  即使短暫也刻骨銘心

那些點亮我們生命的語言  就如同傳說中發生在星羅的愛情故事 

 

QRegExp的更多相关文章

  1. qregularexpression和qregexp的区别

    QRegularExpression 是Qt 5.0才引进的,相对于QRegExp,QRegularExpression class修复了很多bug,提高了效率,提供了对Perl的RegEx几乎全面兼 ...

  2. QRegExp 正则表达式详解

    引言 正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征.比如 表达式“ab+” 描述的特征是“一个 'a' 和 任意个 ...

  3. qt QRegExp使用(搬运工)

    设置正则表达式. 类似下面的 QRegExp 这里的用法就是用来检测QString等字符串错误的,例如文件名里面最好就不出现<>|/\:等,所以可以如下定义QRegExp rx(" ...

  4. QRegExp解析

    正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征.比如 表达式“ab+” 描述的特征是“一个 'a' 和 任意个 'b' ...

  5. Qt实现端口扫描器

    首先展示一下效果: 界面通过Qt设计师做出来的. 主要有两个类. 首先主函数: #include "mainwindow.h" #include <QApplication& ...

  6. pyqt 发射接收信号

    翻页控件: 一.定义并发射信号: #!/usr/bin/python # #coding=utf-8 # __author__='' from PyQt4.QtCore import * from P ...

  7. Qt:正则表达式语法:

         正则表达式是验证输入.从输入中提取数据以及对输入进行搜索和替换的强大工具,所谓正则表达式,regexp是一种利用模式匹配语言来描述字符串组成限制条件的方式;        Qt 提供了一个Q ...

  8. Qt5 新特性

    Qt 5 已经临近发布,其最大的特点就是模块化.将原来庞大的模块更细分为不同的部分,同时,一个大版本的升级,当然少不了添加.删除各个功能类.文本简单介绍 Qt5 的特性,其具体内容来自 Qt5 官方 ...

  9. 【QT】C++ GUI Qt4 学习笔记2

    Go To Cell 利用QT Desinger做好界面后加入的代码有 gotocelldialog.h #ifndef GOTOCELLDIALOG_H #define GOTOCELLDIALOG ...

随机推荐

  1. wins 软件安装

    1.x86 x64区别86就是原来的32位操作系统64就是现在比较新的64位操作系统

  2. Hibernate环境搭建

    Hibernate的环境搭建,主要步骤分为一下四步: 首先创建一个工程,在工程里创建一个实体类User,在这个实体类中必须包含无参的构造器,和这个类对属性的存取方法(getter and setter ...

  3. sublime 3插件安装记录

    安装sublime 3的package control管理器: 从菜单 View - Show Console 或者 ctrl + ~ 快捷键,调出 console.将以下 Python 代码粘贴进去 ...

  4. 编写高质量代码改善C#程序的157个建议——建议137:委托和事件类型应添加上级后缀

    建议137:委托和事件类型应添加上级后缀 委托类型本身是一个类,考虑让派生类的名字以基类名字作为后缀.事件类型是一类特殊的委托,所以事件类型也遵循本建议. 委托和事件的正确的命名方式有: public ...

  5. 汇编中的移位指令(8086CPU)

    原创 8086CPU中有8条移位指令,分为两大类. 非循环移位指令: SAL —— 算术左移 —— 最高位移入标志状态位CF SAR —— 算术右移 —— 最低位移入CF,最高位不变. 比如说:将10 ...

  6. Java如何实现按指定行读取文件

    最近在开发实战中,遇到了一个这样的技术情景: 把log4j生成的日志文件定时刷进MySQL数据库,比如三个小时刷一次,那么每次刷数据的时候,如何控制文件读取是从上一次文件读取结束的地方开始继续读取的? ...

  7. 《T-SQL查询》- SQL逻辑处理

    下面列出SQL查询语句的一般形式,以及各个子句被逻辑处理的顺序步骤: (8) SELECT (9) DISTINCT (11) <TOP_specification> <select ...

  8. Revel框架学习

    1.准备工作 revel的下载需要git和hg(mercurial)工具,请先安装这两个工具. 配置好GOROOT和GOPATH环境变量,源码会默认下载到GOPATH第一个目录的src目录下. 一般g ...

  9. cisco和h3c网络设备中一次性打印全部配置信息

    cisco的是全页打印配置信息的命令: #terminal length 0 #show run 华为和h3c的是: >screen-length 0 temporary >display ...

  10. C - Maximum of Maximums of Minimums(数学)

    C - Maximum of Maximums of Minimums You are given an array a1, a2, ..., an consisting of n integers, ...