国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript正則表達式函數總結(常用)

2019-11-19 14:20:09
字體:
來源:轉載
供稿:網友

/* 測試環境:Chrome 63.0.3239.132 */

JS中正則對象修飾符可選值為:"i" "g" "m",即忽略大小寫 進行全局匹配 多行模式

JS中正則表達式支持的元字符:

1:枚舉方括號表達式,范圍方括號表達式,枚舉取反方括號表達式,范圍取反方括號表達式

2:. /w /W /d /D /s /S /b /B /n /r /f /v /888 /uffff /xff

3:n? n+ n* n{a} n{a,} n{a,b}及這些量詞的非貪心模式

4:^ $ (?!) (?=) (?:)

其他:

1:JS中引用分組請用/number,不支持''和<>這樣的命名分組

2:不支持量詞的占有模式

3:不支持逆向環視

4:方括號表達式中復合表達式支持如下:

[abc0-9] [abc/d] [/d/w^&]等等類似的

5:支持修飾符組合,比如gim mig gi ig等等,無順序要求

JS正則對象屬性:

global:該對象是否開啟全局匹配,一個布爾值

ignoreCase:該對象是否開啟忽略大小寫,一個布爾值

multiline:該對象是否開啟多行模式,一個布爾值

lastIndex:該對象下一次開始匹配的位置,即上一次匹配結束的位置,一個正整數

source:正則表達式的源文本,即/regexp/flag的regexp,不包含修飾符,一個字符串

創建正則表達式:

1:myreg = new RegExp(patternString[,globalFlags]);

2:myreg = /yourRegexp/globalFlags;

JS中正則表達式常用方法:

在RegExp對象中:

1:test(yourString);

定義:檢測一個字符串是否匹配某個模式。

其他說明:該方法將忽略"g"標志和正則對象的lastIndex屬性(即總是從開頭找起),只要查找到符合模式的字符串即匹配成功。

2:exec(yourString);

定義:檢索字符串中的正則表達式的匹配。

其他說明:若沒開啟"g"標志,只查找一次,不修改正則對象的lastIndex屬性,返回一個對象,包含下標0、index、input,這時屬性和match等價;開啟"g",將修改正則對象的lastIndex屬性為本次找到的子字符串的末尾位置,返回一個和沒開啟"g"一樣的對象。(你可以自行修改正則對象的lastIndex屬性來規定exec開始查找的位置。)

在String對象中:

1:search(yourRegexpOrString);

定義:檢索字符串中與指定的子字符串或正則表達式相匹配的子字符串。

其他說明:該方法將忽略"g"標志和正則對象的lastIndex屬性(即總是從開頭找起),返回找到的第一個字符的位置,如果未找到返回-1。

2:match(yourRegexpOrString);

定義:在字符串內查找一個或多個與正則表達式匹配的字符串,返回一個對象。(忽略laseIndex屬性)

其他說明:若沒開啟"g"標志,將只查找第一個匹配的字符串,返回一個對象,包含下標0、index、input,其中下標0等價于index,input是String的引用;開啟"g",返回一個數組,數組的length是匹配的字符串個數,每個元素是每個匹配的起始字符位置。

3:replace(yourRegexpOrString,placementString);

定義:用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達式匹配的子串。

其他說明:如果沒有"g"標志只會替換一次,并且如果參數是字符串而不是正則對象始終替換一次。返回一個字符串,為用placementString替換yourRegexpOrString后的結果。placementString中$有特殊用途,見下表:

$1、$2、...、$99 regexp中捕獲的引用分組。
$& 本次匹配的文本。
$` 本次匹配到的子串左側的文本。
$' 本次匹配到的子串右側的文本。
$$ $本身。

該方法的第二個參數可以為一個函數,每次匹配都會調用該函數,以函數返回值作為placement,一共傳入4個參數,第一個參數為本次匹配的子文本($&),中間參數為子表達式匹配字符串,個數不限($i),倒數第二個參數為本次匹配到的子文本下標位置,最后一個參數表示執行place方法的字符串本身。

4:split(yourRegexpOrString[,howMany]);

定義:把一個字符串分割成字符串值的數組。

其他說明:是arr.join(separatorString)反操作,如果傳入"",則每個字符都將會被分隔到數組。howMany指定返回數組的個數。

總結

以上所述是小編給大家介紹的JavaScript正則表達式函數總結,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金寨县| 灵璧县| 广宗县| 南木林县| 平罗县| 南昌市| 巧家县| 五台县| 若尔盖县| 清镇市| 株洲市| 垦利县| 阳春市| 南平市| 当涂县| 社会| 珲春市| 胶州市| 常州市| 中西区| 芜湖市| 五指山市| 沛县| 张家港市| 福清市| 宜君县| 福泉市| 丰原市| 凤城市| 盘锦市| 萨迦县| 宜章县| 鹰潭市| 九龙城区| 龙陵县| 浦东新区| 乌恰县| 涞源县| 吉隆县| 平乐县| 会东县|