QT正则表达式小例子

判断合法IP的QT正则表达式:

 

bool IsIPaddress(QString ip)

{

    QRegExp rx2("(//d+)(//.)(//d+)(//.)(//d+)(//.)(//d +)");

 

    int pos = rx2.indexIn(ip);


    if(pos>-1)
    {

         for(int i=0;i<4;i++)
        {
            if( rx2.cap(i*2+1).toInt()>=255 )
            {
                QMessageBox::information(this, tr("错误"), tr("IP地址错误"));

                return false;

            }
        }

 

        if(rx2.cap(7).toInt()==0)
        {           

            QMessageBox::information(this, tr("错误"), tr("IP地址错误"));

            return false;

        }

        if(rx2.cap(7).toInt()==0)
        {
            QMessageBox::information(this, tr("错误"), tr("IP地址错误"));

            return false;

        }
    }
    else
    {

        QMessageBox::information(this, tr("错误"), tr("IP地址错误"));

        return false;

    }

 

    return true;

}

 

判断IP地址更简单的方式是:

    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) )

    {

          QMessageBox::information(this, tr("错误"), tr("ip地址错误"));

          return false;

    }

    return true;

 

 

判断文件名是否含有字母、数字、下划线之外的字符:

 

bool IsRightFilename(QString filename)

{

    QRegExp rx("[A-Za-z_0-9]+");

 

    if( !rx.exactMatch( filename) )

    {

          QMessageBox::information(this, tr("错误"), tr("文件名含有其他字符或中文字符"));

          return false;

    }

    return true;

}

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值