Qt:限制lineEdit文本框输入内容的方法

1、保证lineEdit文本框只能输入数字的语句:

 

  1 QRegExp regx("[1-9][0-9]+$");
  2 QValidator *validator = new QRegExpValidator(regx, ui->lineEdit );
  3 lineEdit->setValidator(validator);
lineEdit的第一个数是1-9的,第二个数和之后的是0-9的
2、QRegExp用来检测QString等字符串错误的。
   例如文件名里面最好就不出现<>|/\:等,所以可以如下定义
   QRegExp regx("[a-zA-Z0-9\-\\\_]{25}"); 
   25就是所输入的字符串个数!a-z当然就是a-z,你也可以abcdefghijklm....等等.\- 就是-
3、常用的:
非负整数:"^\d+$"
正整数:"^[0-9]*[1-9][0-9]*$"
非正整数(负整数 + 0):"^((-\d+)|(0+))$"
负整数:"^-[0-9]*[1-9][0-9]*$"
整数:"^-?\d+$"
非负浮点数(正浮点数 + 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+)?$" 
由26个英文字母组成的字符串 "^[A-Za-z]+$" 
由26个英文字母的大写组成的字符串:"^[A-Z]+$" 
由26个英文字母的小写组成的字符串:"^[a-z]+$" 
由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"
由数字、26个英文字母或者下划线组成的字符串:"^\w+$" 
email地址:"^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"
"^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  
年-月-日:"^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$"
月/日/年:"^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$" 
电话号:"(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?" 
IP地址:"^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$"  
MAC地址的正则表达式:

^([0-9A-F]{2})(-[0-9A-F]{2}){5}$   //

你可能感兴趣的:(Qt,Qt)