《Qt5+正则表达式匹配字符串或者限制编辑框输入字符串》

本文详细介绍了在Qt应用中如何利用QRegExpValidator进行输入限制,提供了多个正则表达式实例,覆盖从简单数字到复杂字符组合的验证需求。

添加头文件

#include "QRegExp"
#include "QRegExpValidator"

关键代码

QRegExp regx("^[4-9]|[1-9][0-9]|[1-3][0-4][0-9]|350$");
QValidator *validator = new QRegExpValidator(regx,ui->lineEdit);
ui->lineEdit->setValidator(validator);

常用正则表达式,有些是没验证的 

    //1-100的正整数
    QRegExp regExp1("^1|[1-9][0-9]?|100$");
    //浮点数,不限制小数点位数
    QRegExp regx2("^(-?\\d+)(\\.\\d+)?$");
    //浮点数,限制小数点位数
    QRegExp regx3("^(-?\\d+)(\\.\\d{1,2})?$");
    //由数字和26个英文字母组成的字符串
    QRegExp regx3("^[A-Za-z0-9]+$");
    //由26个英文字母组成的字符串
    QRegExp regx4("^[A-Za-z]+$");
    //由26个英文字母的大写组成的字符串
    QRegExp regx5("^[A-Z]+$");
    //由26个英文字母的小写组成的字符串
    QRegExp regx6("^[a-z]+$");
    //由26个英文字母的小写组成的字符串
    QRegExp regx7("^[a-z]+$");
    //由数字、26个英文字母或者下划线组成的字符串
    QRegExp regx8("^\\w+$");
    //非负浮点数(正浮点数 + 0)
    QRegExp regx9("^\\d+(\\.\\d+)?$");
    //正浮点数
    QRegExp regx10("^0|([1-9]+(\\.[0-9]{1,2})?)$");
    //非正浮点数(负浮点数 + 0)
    QRegExp regx11("^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$");
    //整数
    QRegExp regx12("^-?\\d+$");
    //负整数
    QRegExp regx13("^-[0-9]*[1-9][0-9]*$");
    //非正整数(负整数 + 0)
    QRegExp regx14("^((-\\d+)|(0+))$");
    //正整数
    QRegExp regx15("^[0-9]*[1-9][0-9]*$");
    //非负整数
    QRegExp regx16("^\\d+$"); 

 

参考博客:

https://blog.youkuaiyun.com/SeekN/article/details/72448786

https://blog.youkuaiyun.com/dashumak/article/details/78401297

在Windows Server上设置WebSocket服务器通常需要使用支持WebSocket功能的服务器端框架,如Node.js的WS库或Microsoft的ASP.NET Core。以下是使用Node.js作为示例的简要步骤: 1. **安装Node.js**: 首先确保你已经安装了Node.js,如果没有,访问https://nodejs.org/ 下载并按照官方文档安装。 2. **创建项目**: 打开命令提示符或PowerShell,进入你想创建项目的目录,然后运行 `npm init -y` 初始化一个新的Node.js项目。 3. **安装WebSocket库**: 使用 `npm install ws` 命令安装ws模块,它是一个流行的用于WebSocket通信的库。 4. **编写服务器代码**: 在项目根目录创建一个名为 `server.js` 或其他名字的文件,然后添加如下基本WebSocket服务器代码: ```javascript const WebSocket = require('ws'); const wss = new WebSocket.Server({ port: 8080 }); wss.on('connection', (ws) => { console.log('Client connected'); ws.on('message', (message) => { console.log(`Received: ${message}`); // 发送回客户端的消息 ws.send(`You said: ${message}`); }); ws.on('close', () => { console.log('Client disconnected'); }); }); ``` 5. **启动服务**: 运行 `node server.js` 启动WebSocket服务器。此时,服务器将在8080端口监听WebSocket连接。 6. **启用HTTPS**: 如果你需要HTTPS,你需要获取SSL证书并将它们放置在合适的路径,可以使用像Let's Encrypt这样的免费证书颁发机构。然后使用像`https-server`之类的工具,例如: ``` npm install https-server https-server -p 443 -c ./path/to/cert.pem -k ./path/to/key.pem ``` 注意:上面的过程涉及到命令行操作,并且HTTPS部分需要额外的SSL证书管理,如果你对这些操作不熟悉,可能需要查阅相关的技术文档或寻求专业帮助。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值