91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

javaScript正則表達式代碼怎么寫

發布時間:2022-10-18 16:27:15 來源:億速云 閱讀:92 作者:iii 欄目:編程語言

本文小編為大家詳細介紹“javaScript正則表達式代碼怎么寫”,內容詳細,步驟清晰,細節處理妥當,希望這篇“javaScript正則表達式代碼怎么寫”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

javaScript 正則表達式

RegExp對象

‘\b’:代表單詞邊界,比如/\bis\b/會匹配一句話中的is單詞,不會匹配單詞中的is

‘()’:小括號可以用于分組,以便獲取到正則表達式匹配的內容,用1可以獲取第一個小括號的內容,用2可以獲取第二個小括號的內容。以此類推

g:global全文搜索,不添加,搜索到第一個匹配停止

i:ignore case 忽略大小寫,默認大小寫敏感

m:multiple lines多行搜索

var reg = new RegExp(‘\b要替換的文本\b’, ‘g’);
“文本”.replace(reg, “替換后的文本”)

字面量
var reg = /\b文本\b/g;

元字符

正則表達式由兩種基本字符類型組成

1.原義文本字符:代表它原來含義的字符 例如:abc、123

2.元字符:在正則表達式中有特殊意義的非字母字符

例如:\b表示匹配單詞邊界,而非\b
在正則表達式中具體特殊含義的字符:* + ? $ ^ . \ () {} []

元字符:

\t:水平制表符;

\v:垂直制表符;

\n:換行符;

\r:回車符;

\0:空字符;

\f:換頁符;

\cX:與X對應的控制字符

字符類

使用元字符[]來構建一個簡單的類,

所謂類是指符合某些特性的對象,一個泛指,而不是特指某個字符
表達式[abc]把字符a或b或c歸為一類,表達式可以匹配這類字符

字符類取反

使用元字符^創建反向類/負向類

反向類的意思是不屬于某一類的內容

表達式[^abc]表示不是a或b或c的內容

"a1b2c3".replace(/[abc]/g,"x"); // 匹配結果 : x1x2x3

"a1b2c3".replace(/[^abc]/g,"x"); // 取反  匹配結果 : axbxcx

范圍類

范圍類:[a-z],[0-9]等等,可以連寫:[a-zA-Z]

如果要匹配里面的橫杠“-”,可以在后面加一個橫杠“-”:[0-9-]

“2016-09-05”.replace(/[0-9-]/g,”X”) => XXXXXXXXXXX

預定義類

^在中括號中[]表示取反
不在[]表示以xxx開始

\d 數字
\D 非數字
\s 空白符
\S 非空白符
\w 單詞字符(字母數字下劃線)等同于 [a-zA-Z_0-9]
\W 非單詞字符
. 除了回車符和換行符以外的所有字符

正則表達式還提供了幾個常用的邊界匹配字符:

^ 開頭
$ 結尾
\b 單詞邊界
\B 非單詞邊界

量詞

? 最多出現一次
+ 至少出現一次
* 任意次
{n} 出現n次
{n,m} 出現n到m次
{n,} 至少出現n次

JS貪婪模式和非貪婪模式

正則表達式的匹配模式有:貪婪模式,非貪婪模式。默認模式為貪婪模式,設置非貪婪模式需要在量詞后面添加疑問號“?”。

例如:

‘123456789’.match(/\d{3,6}?/g)//匹配結果為['123456']

‘123456789’.match(/\d{3,6}?/g) //匹配結果為 ['123','456','789']

分組

使用()可以達到分組的功能,使量詞作用于分組

| 或

反向引用 $ 捕獲分組

'2015-12-25'.replace(/(\d{4})-(\d{2})-(\d{2})/g,$1/$2/$3);// 匹配結果  2015/12/25

忽略分組

分組:使用“()” ,忽略分組:“(?:)”。忽略分組的意思是說,雖然分了組,但是不能通過”$”來獲取改組的內容。

忽略分組 - 不希望捕獲某些分組,只需要在分組內加上 “?:” 就可以
例: (?:Byron)

前瞻(js不支持后顧)

exp(?=assert) 正向前瞻
exp(?1assert) 負向前瞻

前瞻 匹配某個正則之后 再檢查 后面的匹配規則

正向前瞻(/\w(?=\d)/);//匹配到單詞之后,在檢查后面是數字

負向前瞻(/\w(?!\d)/)://匹配到單詞之后,在檢查后面不是數字

對象屬性

g是否全文搜索

i是否大小寫敏感

m是否多行搜索

l當前表達式匹配內容的最后一個字符的下一個位置

s正則表達式的文本內容

test和exec 方法

reg.test(“str”);// 測試參數是否匹配正則表達式reg

字符串對象的方法

str.search(reg);//search返回第一個匹配結果的index,查找不到返回-1;search方法是忽略全局匹配的

str.match(reg);//返回數組,match方法 是否具有標志g對結果影響很大,沒有標志g只執行一次匹配,沒有找到文本,返回null,否則返回數組

str.split(reg);//返回數組

str.replace(reg,str1);//

string.replace(str, replaceStr)

string.replace(reg, replaceStr)

string.replace(reg, function)

讀到這里,這篇“javaScript正則表達式代碼怎么寫”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

泾阳县| 丽水市| 中山市| 桦川县| 廉江市| 台江县| 若尔盖县| 定远县| 宣化县| 裕民县| 宁化县| 孝义市| 宜昌市| 元朗区| 平阳县| 灵山县| 紫阳县| 兴隆县| 铁岭县| 汝州市| 顺义区| 彰武县| 尤溪县| 桦川县| 枞阳县| 抚顺市| 呼伦贝尔市| 凤翔县| 潮州市| 偃师市| 准格尔旗| 三门峡市| 阿尔山市| 陵水| 中宁县| 普安县| 兴国县| 民和| 涞水县| 海伦市| 温泉县|