JS學習筆記 正規表示式及RegExp物件

2021-10-01 07:08:08 字數 2063 閱讀 9646

一、正規表示式

所謂的正規表示式就是定義字串的組成規則。

1.正規表示式修飾符

修飾符可用於大小寫不敏感的更全域性的搜素:

修飾符描述

i執行對大小寫不敏感的匹配。

g執行全域性匹配(查詢所有匹配而非在找到第乙個匹配後停止)。

m執行多行匹配。

2.正規表示式模式

括號用於查詢一定範圍的字串:

表示式描述

[abc]

查詢方括號之間的任何字元。

[^abc]

查詢任何不在方括號之間的字元。

[0-9]

查詢任何從 0 至 9 的數字。

[a-z]

查詢任何從小寫 a 到小寫 z 的字元。

[a-z]

查詢任何從大寫 a 到大寫 z 的字元。

[a-z]

查詢任何從大寫 a 到小寫 z 的字元。

[adgk]

查詢給定集合內的任何字元。

[^adgk]

查詢給定集合外的任何字元。

(red/blue/green)

查詢任何指定的選項。

元字元(metacharacter)是擁有特殊含義的字元:

元字元描述

\w查詢單詞字元。

\w查詢非單詞字元。

\d查詢數字。

\d查詢非數字字元。

\s查詢空白字元。

\s查詢非空白字元。

\b匹配單詞邊界。

\b匹配非單詞邊界。

\0查詢 nul 字元。

\n查詢換行符。

\f查詢換頁符。

\r查詢回車符。

\t查詢製表符。

\v查詢垂直製表符。

\***

查詢以八進位制數 *** 規定的字元。

\xdd

查詢以十六進製制數 dd 規定的字元。

\u***x

查詢以十六進製制數 ***x 規定的 unicode 字元。

quantifiers 定義量詞:

量詞描述

n+匹配任何包含至少乙個 n 的字串。

n*匹配任何包含零個或多個 n 的字串。

n?匹配任何包含零個或乙個 n 的字串。

n匹配包含 x 個 n 的序列的字串。

n匹配包含 x 至 y 個 n 的序列的字串。

n匹配包含至少 x 個 n 的序列的字串。

n$匹配任何結尾為 n 的字串。

^n匹配任何開頭為 n 的字串。

?=n匹配任何其後緊接指定字串 n 的字串。

?!n匹配任何其後沒有緊接指定字串 n 的字串。

二、正則物件

1.建立

var 物件名 = /正規表示式/;

例子:

<

!doctype html>

"utf-8"

>

<

/title>

<

/head>

var reg =

/^\w$/

;//建立物件reg

var name =

"zhangsan"

;alert

(reg.

test

(name));

//呼叫test函式

<

/script>

<

/body>

<

/html>

結果:

2.regexp 物件方法方法

描述compile

編譯正規表示式。

exec

檢索字串中指定的值。返回找到的值,並確定其位置。

test

檢索字串中指定的值。返回 true 或 false。

JS正規表示式 學習筆記

regexp是正規表示式的縮寫。採用new運算子建構函式定義 var reg new regexp box 採用字面量方式 定義 var reg pattern i 忽略大小寫 g 全域性匹配 m 多行匹配 test 檢索字串中的指定值,返回boolern 通常用來判斷所給的值是否符合正規表示式 返...

js正規表示式學習筆記

js正則表達 新建正規表示式有兩種方法 1 使用字面量 var regex xyz 2 使用regexp建構函式 var regex new regexp xyz 正則的使用 regex.test string string.match regex 正則的匹配規則 1.字面量字元和元字元 大部分字元...

js學習筆記(正規表示式)

這些心得是萌新作者再學習過程中的作業上發現的,希望大佬們如果發現有錯誤和有更加好的意見務必提出。正規表示式定義的是乙個規則,乙個與字串匹配的規則。我的題目是 1.字串中只能有字母或數字 2.至少是8位 3.數字至少出現兩次 輸入 var str prompt 驗證 function inspecti...