软件综合设计课,需要新用户用手机号码验证,
最近刚学了正则表达式,不妨用一下
手机号的合法性基于以下假设
-
账号不能为空
-
以1开头,第2位是3,5,8,总共11位
-
账号中没有有数字之外的字符
-
没有前缀和后缀空格
程序判断如下,
std::regex r("^1(3|5|8)\\d{9}$");
std::string userIdString = userID.toStdString();
qDebug()<<userID;
bool bValid=std::regex_match(userIdString,r);
if(!bValid){
return("手机号不合法");
}else{
qDebug()<<"合适的账号格式:是电话号码(以1开头,第2位是3,5,8,总共11位)";
qDebug()<<"注册成功,申请账号为:"<<userID;
这两天新买了无线路由器,说明书介绍说该设备信号相当不错,各种参数眼花缭乱。于是设置好wifi,并用手机连接上,先是尝试了下网速 然后干拿着跑了很远尝试信号情况。那么手机顶部wifi的图标指示了当前信号的强度,wifi强度变化让我来了兴趣 于是给邻居小强的旧版苹果手机连接上了俺的wifi。看着小强旧版苹果手机顶部的移动信号于是有了这篇Qt重绘控件的想法。哈哈,挺好玩的。
目前使用的手机号码段如下:
手机号码 13[0-9],14[5|7|9],15[0-3],15[5-9],17[0|1|3|5|6|8],18[0-9]
移动:134[0-8],13[5-9],147,15[0-2],15[7-9],178,18[2-4],18[7-8]
联通:13[0-2],145,15[5-6],17[5-6],18[5-6]
电信:133,1349,149,153,173,177,180,181,189
匹配正则:^1([358][0-9]|4[579]|66|7[0135678]|
//使用数组接收输入的、需要判断的数值
//先进行数值类型判断,如果输入了不属于int类型的值则直接判断失败
//上述判断成功时,再对输入的数值进行长度判断,中国一般有三位数与十一位数的电话号码
//满足类型与长度后,再进行判断号码是否符合中国电话号码规定
int main()
printf(“输入回车键开始”);
char s[100];
int i;
printf(“请输入需要判断的号码数据(数字类型):\n”);
scanf("%s", &
QRegExp regxName("^[0-9a-zA-Z_]+$");
QValidator *validatorName = new QRegExpValidator(regxName);
ui->lineEdit->setValidator(validatorName); //ui为lineEdit的控件
正则表达式提取字符串中的数字...
7-2 验证手机号码(C++ Java) (10 分)
某系统在新用户注册时必须输入手机号,为了提高系统效率,防止输错手机号,需要对手机号进行验证。 验证规则为: (1)长度为11位 (2)由数字0~9组成 (3)必须是1开头 以上3个条件同时满足,则验证通过,否则为不通过。
输入格式:
在一行中一个字符串,长度不超过50个字符。例如: 13802988920
输出格式:
如果验证通过则输出Yes,否则输出No。
输入样例:
13812345678
输出样例:
#include <
只输入数字
QRegExp regExp("^[0-9]{1,5}?$");
ui->edit_pos->setValidator(new QRegExpValidator(regExp));
限制int和float输入 ,如下,整数部分限制为0-9输入,最多输入5个数字;小数部分限制1-9输入,只能输入一位。
QRegExp regExp("^[0-9]{1,5}([.][1-9]{1})?$");
ui->edit_pos->setValidator(new QRegExpVa
QT 和webservice的demo,查询手机号码归属地信息webservice简介C++访问WebService (需要密码验证)查询手机号码归属地信息的qt demoDEMO 下载链接
webservice简介
WebService就是一种跨编程语言和跨操作系统平台的远程调用技术。所谓跨编程语言和跨操作平台,就是说服务端程序采用java编写,客户端程序则可以采用其他编程语言编写,反之亦然。跨操作系统平台则是指服务端程序和客户端程序可以在不同的操作系统上运行。 远程调用,就是一台计算机的应用可以调用其他
QRegExp rx("^[0-9]*$");
QValidator *validator = new QRegExpValidator(rx, this);
ui->lineEdit->setValidator(validator);
其中,`QRegExp`类用于创建正则表达式,"^[0-9]*$"表示允许输入任意数量的数字。`QValidator`类用于验证输入是否符合正则表达式规则。`ui->lineEdit`表示输入框。