天天看点

QML正则表达式(电话号、邮箱)

这里只做最简单的手机电话号码限制:

1、限制第一位为1

2、限制其余10位为0-9

熟悉正则表达式的朋友可能很快就能写出来。不熟悉的也可以百度正则表达式。

最开始是这样做的,虽然可以实现,但是啰嗦:

/[1][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/      

现在的写法:

/^[1]\d{10}/      

QML中的TextInput下,有一个validator属性,Qt帮助文档中这样写:

QML正则表达式(电话号、邮箱)

我们可以参考,这么写:

validator: RegExpValidator{regExp:/^[1]\d{10}/}

注意:在TextInput下要先确定光标的位置,再输入。

TextField {
        id: inputEmail
        validator: RegExpValidator {
            regExp: /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
        }
    }