2011-04-21 14:13
2458人閱讀
正規表示式
qt框架
2010
首先小例:**
判斷合法ip的qt正規表示式:
bool isipaddress(qstring ip)
}if(rx2.cap(7).toint()==0)
if(rx2.cap(7).toint()==0)
}else
return true;
}qregexp rx2("^([1]?/d/d?|2[0-4]/d|25[0-5])/.([1]?/d/d?|2[0-4]/d|25[0-5])/.([1]?/d/d?|2[0-4]/d|25[0-5])/.([1]?/d/d?|2[0-4]/d|25[0-5])$")
if( !rx2.exactmatch(ip) )
return true;
判斷檔名是否含有字母、數字、下劃線之外的字元:
bool isrightfilename(qstring filename)
return true;
}使用正規表示式檢驗ip的合法性。**:
正規表示式:
qregexp rx ((2[0-4]//d|25[0-5]|[01]?//d//d?)//.)(2[0-4]//d|25[0-4]|[01]?//d//d?) ;
iplabel = new qlabel(tr("ip address:"));
iplineedit = new qlineedit;
iplabel->setbuddy(iplineedit);
qvalidator *validator = new qregexpvalidator(rx, this);
iplineedit->setvalidator(validator);
iplineedit->setinputmask("000.000.000.000;");
實現框架下的驗證輸入的ip、子網掩碼的合法性。(生成ip位址類)**:
#include
#include
#include
#include
#define ip_h
class ip : public qwidget ;
#include
#include
#include
#include
#include
#include "ip.h"
ip::ip(const qstring & text, qwidget *parent, const char *nombre) : qwidget(parent, nombre, 0)
label->move(0, 0);
ipp->move(150, 0);
label->settext(text);
// ip->setinputmask("000.000.000.000; "); }
qstring ip::getvalue()
設定具有ip輸入格式的輸入框模式。**:
qregexp rx("((2[0-4]//d|25[0-5]|[01]?//d//d?)//.)(2[0-4]//d|25[0-5]|[01]?//d//d?)");
qregexpvalidator v(rx, 0);
qlineedit le;
le.setvalidator(&v);
le.setinputmask("000.000.000.000;0");//只要加上;0保證有預設值即可使得正則和mask同時生效。
IP位址 正規表示式
ip位址正規表示式 正規表示式 分析ip位址的組成特點 250 255 200 249 0 199。這三種情況可以分開考慮,1.250 255 特點 三位數,百位是2,十位是5,個位是0 5,用正規表示式可以寫成 25 0 5 2.200 249 特點 三位數,百位是2,十位是0 4,個位是0 9,...
IP位址的正規表示式
分析ip位址的組成特點 250 255 200 249 0 199。這三種情況可以分開考慮,1.250 255 特點 三位數,百位是2,十位是5,個位是0 5,用正規表示式可以寫成 25 0 5 2.200 249 特點 三位數,百位是2,十位是0 4,個位是0 9,用正規表示式可以寫成 2 0 4...
IP位址的正規表示式
ip位址的長度為32位,分為4段,每段8位,用十進位制數字表示,每段數字範圍為0 255,段與段之間用英文句點 隔開。例如 某台計算機ip位址為10.11.44.100。分析ip位址的組成特點 250 255 200 249 0 199。這三種情況可以分開考慮,1.250 255 特點 三位數,百位...