正規表示式

2021-08-20 18:35:14 字數 1418 閱讀 1233

正規表示式手冊:

捕獲匹配or非捕獲匹配

() 捕獲匹配。

(?:) 前置匹配(非捕獲)。 

(?=) 後置匹配(非捕獲)。

(?!) 後置非匹配(非捕獲)。

容易忽略的小細節點

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

\b 匹配乙個單詞邊界,也就是指單詞和空格間的位置。例如,「er\b"可以匹配"never"中的"er",但不能匹配"verb"中的"er"。

\s 匹配任何空白字元,包括空格、製表符、換頁符等等。等價於[ \f\n\r\t\v]。

正規表示式以及字串的方法

兩個高能的方法:replace、exec。

replace方法: replace([string|exec],[string|function])

使用字串的場景:替換字串中固定模式的字串。

使用函式場景:替換字串中固定模式的字串,並且需要做轉換。

exec方法:返回正則匹配後結果。

案例

/* 案例1:反轉url中的名稱和值 */

const rtest = /([\?&])([0-9a-za-z]+)=([0-9a-za-z]+)/ig;

const url1 = "";

// 使用$+number的方式獲取匹配組

const resulturl1 = url1.replace(rtest, '$1$3=$2');

/* 案例2:解析url中query */

let info,urlmap = {};

while((info = rtest.exec(url1)) != null)

/* 案例3:溫度轉化 */

function f2c(x)

var s = string(x);

var test = /(\d+(?:\.\d*)?)f\b/g;

// 使用string.prototype.replace方法

return s.replace(test, convert);

}

資源:

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

非負整數 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正規表示式 編寫正規表示式

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