1. 程式人生 > >JS正則(3)總結

JS正則(3)總結

1.正則:檢索字串的一條規則

2.正則就是由元字元和修飾符構成的

3.寫在//裡面的都叫元字元,元字元分兩種 一種是有特殊意義的,一種沒有特殊意義,沒有特殊意義的就是字元本身

  特殊意義的元字元:

    (1)\  轉義字元  轉譯後面緊跟的字元的意義   \d     \.

    (2).  代表除了\n以外的任何單個字元

    (3)d,D,w,W, s S ,B,b

    (4)^以什麼開頭

    (5)$以什麼結束  \$就是$本身;

    (6)|代表或的意思;

  帶有量詞意思的元字元:

    (1)?代表0到一個;

    (2)*代表0到多個;

    (3)+代表1到多個;

    (4){}系列

  []系列的元字元:

    (1)[xyz]代表x或y或z中的任意一個;

    (2)[0-9]代表0-9之間的任意一個;

    (3)[a-z]代表小寫a到小寫z;

    (4)[A-Z]代表大寫A到大寫Z;

    (5)[A-z]代表大寫A到小寫z;

  ()分組系列

4.正則的細節:

  (1)正則定義的區別:

    var reg=/hello/g

    var reg=new RegExp("hello","g")

    前者裡面不能引用變數,後者可以。

  (2)reg=/^\d$/

    

     因為^和$不佔用位置,也說明開頭和結尾夾了一個數字,表達一個純數字

  (3)/./和/\./的區別

  (4)[.],[+]的意思

    .和+在正則裡是特殊的元字元,.是任意字元 +是量詞代表多個。

    在[]裡面的.和+就是這個字元本身,沒有意義。

  (5)| 代表或

    [2|3]代表2或3

    [12|34]代表1或2|3或4,或者12,34 往往這種情況需要分組()

    [(12|34)]

    [xyz]

  (6)-的問題

    /-/就是-本身。沒有意義,如果寫在[0-9]代表0到9之間的任意一個數字。

    [12-65]代表18-65之間的數字???

    表達的是1或者2-6的數字或者5

    案例1 寫一個12到65週歲的正則

      

    案例2:寫一個正常的數字的正則

      +12 -12  23  23.256   6   0.36