正規表示式 火星文

2022-07-28 09:12:13 字數 1507 閱讀 1755

之前在學習到正規表示式的時候,真的看了兩秒直接就跳過了,真的看到都怕,來自地球的我表示真的看不懂這個傳說中的火星文,但是,要想學習到更多的知識,我深知逃避是解決不了問題的,於是我硬著頭皮嘗試的去理解它,今天簡單記錄下來,以供以後來鄙視

正則表達是其實就是規則表示式,就是我們要找的條件翻譯成計算機能讀懂的語言

建立正則物件有兩種方式:

js風格——new regexp("a","i");   

perl風格——/a/i;      

語法與釋義:

基礎語法 "^({})({})({})$"

正則字串 = "開始([包含內容])([包含內容])([包含內容])結束"

匹配郵箱的例子

//

郵箱規則拆分:開始一串數字、字母、下劃線@一串數字、英文.一串英文(最少2,最多4)結束

var re=/^\w+@[a-z0-9]+\.[a-z]$/g;

其中g代表全域性匹配,i代表不區分大小寫;

常用運算子與表示式:

^ 開始

() 域段

包含,預設是乙個字元長度

[^] 不包含,預設是乙個字元長度

匹配長度 

. 任何單個字元(\. 字元點)

| 或\ 轉義

$ 結尾

[a-z] 26個大寫字母

[a-z] 26個小寫字母

[0-9] 0至9數字

[a-za-z0-9] 26個大寫字母、26個小寫字母和0至9數字

, 分割

去掉首尾空格例子:--考察開頭和結束字元使用

var re=/^\s+|\s$/g;

匹配是否存在中文:

var re=/[\u4e00-\u9fa5]/;

理解常用的正規表示式:

[abc] a或者b或者c

等價:等價是等同於的意思,表示同樣的功能,用不同符號來書寫。

表示範圍,至少出現n次,最多m次

?,*,+,\d,\w 都是等價字元

量詞:?等價於匹配長度    //零次或1次

*等價於匹配長度     //任意次

+等價於匹配長度    //一次或任意次

\d等價於[0-9]  

\d等價於[^0-9]

\w等價於[a-za-z_0-9]

\w等價於[^a-za-z_0-9]

\b匹配乙個單詞邊界,也就是指單詞和空格間的位置(即正規表示式的「匹配」有兩種概念,一種是匹配字元,一種是匹配位置,這裡的\b就是匹配位置的)。例如,「er\b」可以匹配「never」中的「er」,但不能匹配「verb」中的「er」

\b匹配非單詞邊界。「er\b」能匹配「verb」中的「er」,但不能匹配「never」中的「er」

運用正則,寫完美版getbyclass()

function

getbyclass(oparent,aclass)

}return

aresult;

}

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...