正則表達式表達式及常用案例

正則表達式主要用來實現字符匹配,在表單驗證中有着很強大,很巧妙的作用,在之後的博客中我會將正則表達式運用到表單驗證中,那麼,首先了解它的具體語法和常見案例用法吧!

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>正則表達式</title>
    <script>
        // 正則表達式
        //   \n匹配換行   \s匹配任何空白字符  \S匹配任何非空白字符

        // 特殊字符串:
        // $匹配結尾
        // ()匹配的是表達式裏面的子表達式
        // *匹配前面的子表達式 0次或多次
        // +匹配前面的子表達式 1次或多次
        // .匹配單字符
        // []匹配表達式的開頭和結尾
        // ?匹配前面子表達式0次或1次
        // \匹配特殊字符
        // ^表達式中取反
        // {}限定符
        // |  相當於或


        // 限定符
        // {n} 匹配前面的子表達式n次
        // {n,} 匹配至少nc次
        // {n,m}  最少匹配n次,至多匹配m次
        // \d匹配數字
        // \D匹配非數字


        // 手機號的正則表達式
        var phonenum = /^[1]{1}[3,5,7,8,9]{1}[0-9]{9}$/;
        var my = '123456789';
        alert(my.match(phonenum));//判斷結果爲當前值或者null
        // 兩種驗證方式
        var str1 = /[1]{1}[3,5,7,9]{1}[0-9]{9}$/;
        var m = "13333333333";
        alert(str1.test(m));//判斷結果爲true 或者 false


        //  郵箱的正則表達式
        // 前綴形式
        // 1、 純數字 123456 @qq.com
        // 2、 純字母 zhangsan @qq.com
        // 3、 字母數字混合 zhang123 @qq.com
        // 4、 帶點的 zhang.san @qq.com
        // 5、 帶下劃線 zhang_san @qq.com
        // 6、 帶連接線 zhang - san @qq.com 
        var email = /^[a-zA-Z\d]+([\.\-\_][a-zA-Z\d]+)*@([a-zA-Z\d]+[\.\-\_])+[a-zA-Z\d]{2,4}$/;
        var mye = '[email protected]';
        alert(mye.match(email));


        // 驗證純數字
        var num = /^\d+$/;
        var number = '123333';
        alert(number.match(num));

        // 正則表達式替換字符串的字符
        var str = 'askasfjfask';
        var now = str.replace(/a/g, 'm');
        alert(now);
        var str2 = '1 2 3 4 5 6 7 8 9 0';
        var now2 = str2.replace(/ /g, '');
        alert(now2);

        // 在字符串裏面取值
        var str3 = 'asauiqydoiqwfoi1479';
        var now3 = /\d+/g;
        console.log(str3.match(now3)[0]);

    </script>
</head>

<body>

</body>

</html>

建議在熟練語法後寫表達式時,先考慮需求,按照需求分步來寫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章