RegExp 正規表示式及相關用法

2021-08-28 11:49:51 字數 1828 閱讀 5384

一、正規表示式,又稱規則表示式

查詢匹配某些符合規則的字串,正規表示式就是寫這種規則的工具

1. 直接量定義

/正規表示式/[修飾符]

2. 例項化方式

new regexp(字串,[修飾符])

修飾符是可選的

g: 全域性匹配

i: 忽略大小寫

二、方法

1.test()

作用:   用來檢測指定的字串是否符合正則的規則

語法:  boolean regexobj.test(string)

引數:  字串

返回值:  符合規則返回true,不符合返回false

2.search()

作用: 檢索指定字串或正規表示式匹配到的字串首次出現的位置

語法: number string.search(string|regexobj)

引數:  string|regexobj  字串或正規表示式

返回值:    匹配到的字串首次出現的位置  ,  沒有檢索到返回-1

indexof只能接收字串作為引數

3.match()

作用:   檢索指定字串或正規表示式匹配到的字串

語法:  array|null string.match(string|regexobj)

引數: string|regexobj   字串或正規表示式

返回值: 返回陣列---把匹配到的字串放在陣列中 沒有檢索到返回null

ps:    引數為regexobj時

帶有g,全域性匹配,返回的是匹配到的字串組成的陣列

不帶g,匹配乙個字串,並且陣列會有index和input屬性

4.replace()

作用:     用來替換字串中的某些符合規則的字元

語法: string string.replace(string|regexobj,string|function)

引數:第乙個引數:字串或正規表示式

第二個引數:字串或函式

返回值 : 替換後的新字串

注意事項

第二個引數為函式,必須要有返回值,否則替換後的內容為undefined

三、範圍 

數字範圍 [0-9]

中文 [\u4e00-\u9fa5]; //速記:有事妖靈靈,有酒罰我

字母 [a-za-z]

四、正則量詞(限定符):

min次到max次

min次到無窮次

val次

* 零次或多次

+ 一次或多次

? 零次或一次

五。轉義字元

\b 邊界符(單詞邊界)

\b 非單詞邊界

\d 數字 等價於[0-9]

\d 匹配乙個非數字字元 [^0-9]

\f  匹配乙個換頁符 (u+000c)。

\n  匹配乙個換行符 (u+000a)。

\r  匹配乙個回車符 (u+000d)。

\s 匹配乙個空白字元,包括空格、製表符、換頁符和換行符。等價於[ \f\n\r\t\v\u00a0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]。

例如, /\s\w*/ 匹配"foo bar."中的' bar'

\s 匹配乙個非空白字元。等價於[^ \f\n\r\t\v\u00a0\u1680\u180e\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff

\w 等價於[a-za-z0-9_]。

\w 等價於[^a-za-z0-9_]。

[^ ] 非

/^/ 配置開始

RegExp正規表示式

什麼是 regexp?regexp 是正規表示式的縮寫。當您檢索某個文字時,可以使用一種模式來描述要檢索的內容。regexp 就是這種模式。簡單的模式可以是乙個單獨的字元。更複雜的模式包括了更多的字元,並可用於解析 格式檢查 替換等等。您可以規定字串中的檢索位置,以及要檢索的字元型別,等等。var ...

正規表示式 RegExp()

字串處理 split 分割字串 charat 0 提取某個字元 substring 1,5 獲取字串 search a 返回位子,否則 1 正規表示式 字串匹配工具 str.match d g 所有匹配以陣列的形式返回 風格 風格 var re new regexp a var str abcdef...

正規表示式REGEXP

正規表示式 regular expression,regexp 元字元 匹配任意單個字元 匹配指定範圍內的任意單個字元 匹配指定範圍外的任意單個字元 字元集合 digit lower upper punct space alpha alnum 匹配次數 貪婪模式 匹配其前面的字元任意次 a,b,ab...