Home  >  Article  >  WeChat Applet  >  Introduction to form submission and verification and the usage of regular expressions in WeChat mini programs (with code)

Introduction to form submission and verification and the usage of regular expressions in WeChat mini programs (with code)

不言
不言Original
2018-08-21 16:52:427223browse

本篇文章给大家带来的内容是关于微信小程序中表单提交和验证以及正则表达式的用法介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

在wxml中:

<form bindsubmit="formSubmit" bindreset="formReset">
    <input type="text" name="name_1"></input>
    <button form-type=&#39;submit&#39;>登录</button>
    <button form-type=&#39;reset&#39;>重置</button>    
</form>

在js中:

formSubmit:function(e){
console.log(e);//控制台打印输出表单信息,在detail中的value中,页面输入的信息会以其input标签中的name命名
//进行e中的信息获取,然后进行相应的处理
}
formReset:function(e){
console.log(e);//控制台打印输出表单信息
}//可写可不写

表单验证:
       表单验证采取正则表达式验证方法:(自己理解,观点可能片面)

    var reg =  new RegExp("正则表达式模式str");
    //其中str为字符串形式,所以字面上并不是真正的正则表达式,要用javascript中的转义字符,将其中的正则表达式所需字符转义出来
    //或-- var reg =  /正则表达式模式/;
    //以上一种是最常用的定义正则表达式的方法,其中‘/’为边界
    reg.test(str);
    //应用test()方法验证字符串格式,如果格式相同则返回true,否则false

    *注:javascript转义字符:
        \b  退格
        \n  回车换行
        \t  Tab符号
        \f  换页
        \&#39;  单引号
        \"  双引号
        \v  跳格(Tab,水平)
        \r  换行
        \\  反斜杠
        \OOO    八进制整数,范围为000~777
        \xHH    十六进制整数,范围为00~FF
        \uhhhh  十六进制编码的Unicode字符

正则表达式:

//所谓正则表达式,就是把一种类型的字符串从左到右统一表示出来

1、正则表达式的定义:
    1>显式定义
        var reg =  new RegExp("正则表达式模式");
    2>隐式定义
        var reg =  /正则表达式模式/    ;       
2、正则表达式的测试:
        var reg =  /正则表达式模式/    ;   
        reg.test(str);
3、正则表达式基本字符:
    1>元字符(所谓元字符,个人理解就是一种可以代替某一类字符的简写形式,但是它本身是以一个字符形式出现)
        \d          匹配数字,相当于[0-9]
        \D          匹配非数字,相当于[^0-9]
        \w          匹配字母或数字或汉字或下划线
        \W          匹配任意不是字母、数字、汉字或下划线的字符
        \s          匹配任意的空白符,如空格、换行符、制表符等
        \S          匹配任意不是空白符的字符
        .(点号)   匹配除了换行符以外的任意字符
        [...]       匹配方括号中的所有字符
        [^...]      匹配非方括号中的所有字符
    2>连接符 ‘-’
        用来连接某一范围的首尾字符,使表达式更加简洁
        [0-9]   匹配数字,等价于\d
        [a-z]   匹配英文小写字母
        [A-Z]   匹配英文大写字母
        [0-9a-zA-Z] 匹配数字或英文字母
        //如果想要匹配某一范围内的,像最后一种,只需要顺序写下去就好
    3>限定符(用来限定某一字符或某一组字符出现的次数)
                        +       重复1次或更多次
                        *       重复0次或更多次(任意次数)
                        ?       重复0次或1次(最多1次)
                        {n}     重复n次
                        {n,}    重复n次或更多次(最少n次)
                        {n,m}   重复n到m次
                        //限定符出现在字符的后面,即若想匹配go,则为go?
    4>定位符(限定某些位置出现的字符)
            ^   限定开始位置的字符
            $  限定结尾位置的字符
            \b  限定单词(字)边界的字符
            \B  限定非单词(字)边界的字符
            *注:
            //所谓单词,并不是指的英文单词,而是一连串的英文字母
            //所谓字,指的是中文汉字
            限定开始字符:^a   表示以a开头
            限定结尾字符:a$   表示以a结尾
            \b的用法(单词边界就是单词和符号之间的边界):
                //单词可以是中文字符,英文字符,数字;
                //符号可以是中文符号,英文符号,空格,制表符,换行
                    1>当\b出现在前面的时候,例如\ba,即限定开头为a
                    2>当\b出现在后面的时候,例如a\b,即限定结尾为a
            \B的用法(\B是符号与符号,字(字母)与字(字母)的边界)
            例:
                str=",,,123,,";
                reg=/\b1/;
                //或者/3\b/都能匹配成功
                //但是想要匹配2就不能用\b,应该用\B2或2\B匹配
    5>转义字符 &#39;\&#39;
            需要转义的字符有:$、(、)、*、+、.、[、]、?、\、/、^、{、}、|
            在其前方加上‘\’,即可匹配其所对应的字符,而不是对应的语法规则
    6>分组字符
            分组字符  ‘(’   ‘)’ 用来确定一个基本单元并使之作为一个分组
            ()的用法:
                        把括号内的内容作为一个分组,这样写起来就很简单
    7>其他字符
             []的用法:
                        括号中的内容出现某一个即可
             {}的用法:
                        相当于循环次数
    8>选择字符
                |    用来二选一
                例:(H|h)即选择其中之一
4、正则表达式的注释
    (?#注释内容)
5、正则表达式优先级
    \                              转义符
    ()、(?:)、(?=)、[]              圆括号或方括号
    *、+、?、{n}、{n,}、{n,m}       限定符
    ^、$、\b、\B                    位置和顺序
    |                              选择符,“或”运算

相关推荐:

微信小程序中数据绑定的实例分析(代码)

微信小程序中快捷键的设置步骤(图文)

The above is the detailed content of Introduction to form submission and verification and the usage of regular expressions in WeChat mini programs (with code). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn