Qt篇——QLineEdit输入限制

注意:以下均为键盘输入交互时的限制,setText无法限制。

1.只允许输入整型

ui->lineEdit->setValidator(new QIntValidator(ui->lineEdit));

2.只允许输入数字

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("[0-9]+$")));   

2.1.只允许数字0-9且长度为11位

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("[0-9]{11}")));

3.只能输入字母和数字

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("[a-zA-Z0-9]+$")));   

4.只能输入大写字母

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^[A-Z]+$")));

5.只能输入小写字母

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^[a-z]+$")));

6.只能输入字母

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^[A-Za-z]+$")));

7.输入浮点型数据

非负浮点数(正浮点数 + 0):"^\d+(\.\d+)?$"
正浮点数:"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"
非正浮点数(负浮点数 + 0):"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"
负浮点数:"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" 
浮点数:"^(-?\d+)(\.\d+)?$"

8.输入-255~255的整数

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^-?(255|[1,2]?[0-4]?\\d|[1,2]?5[0-4]?)$")));  

9.限制浮点数输入范围为[-90,90]并限定为小数位后4位

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^-?(90|[1-8]?\\d(\\.\\d{1,4})?)$")));

10.输入格式 (年-月-日)

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$")));  

10.1.输入格式(月/日/年)

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$")));  

11.只能中文输入

ui->lineEdit->setValidator(new QRegExpValidator(QRegExp("[\u4e00-\u9fa5]+$")));   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

易Yi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值