Qt判断字符串是否为纯英文、纯数字、纯英文数字组合

适用环境:Qt5/Qt6,C++

//引入头文件,该头文件在Qt5、Qt6均适用
//另一个头文件QRegExp在Qt6被移除
#include <QRegularExpression>
#include <QString>

1、是否为纯英文

//是否为纯英文
bool Widget::IsEnglish(QString str)
{
    //匹配A-Z和a-z的英文字符
    QRegularExpression re("^[A-Za-z]+$");
    QRegularExpressionMatch match = re.match(str);
    return match.hasMatch();
}

2、是否为纯数字

2.1 纯正整数,无小数、负数

//是否为纯正整数
bool Widget::IsNumber(QString str)
{
    //匹配数字0-9
    QRegularExpression re("^[0-9]+$");
    QRegularExpressionMatch match = re.match(str);
    return match.hasMatch();
}

2.2 可能有负数和小数

bool Widget::IsNumber(QString str)
{
    bool ok;
    str.toDouble(&ok); // 尝试将字符串转换为双精度浮点数,并将结果赋给ok
    return ok;
}

3、是否为纯英文数字组合

//是否为纯英文数字组合
bool Widget::IsEnglishOrNumber(QString str)
{
    //匹配0-9、a-z、A-Z
    QRegularExpression re("^[0-9a-zA-Z]+$");
    QRegularExpressionMatch match = re.match(str);
    return match.hasMatch();
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值