摘要:最近迷上了收納,買了好多的箱子,開始整理屋里的東西。同時,返回的這個數(shù)組同時還是一個對象,它擁有兩個屬性,分別為表示當(dāng)前匹配到的子字符串所處的位置,屬性表示被匹配的原始字符串。
最近迷上了收納,買了好多的箱子,開始整理屋里的東西。好友甚至借給我一本日本作家的關(guān)于收納的書籍,又摩拳擦掌地要周末來幫我收拾~~。好吧,那就整理起來吧!
回頭再看看從事的前端工作,都說前端的知識點(diǎn)大而雜,那這么多的知識點(diǎn)是不是也可以收納整理一下呢?在頭腦中逐步形成一個有戰(zhàn)斗力的兵團(tuán),當(dāng)碰到敵軍進(jìn)犯時,都爭先恐后的跳出來請戰(zhàn),而我熟悉他們的每一個優(yōu)點(diǎn),更能審時度勢,運(yùn)籌帷幄!多說無益,開始行動吧!
第一個收納箱從“正則表達(dá)式”開始
在網(wǎng)上看看一個非常詳細(xì)的樹形圖介紹,也引用下來。原圖片的地址如下:https://files.jb51.net/file_i...
定義: (1) 構(gòu)造函數(shù)方式:new RegExp("abc", "gi") (2) 字面量方式: var reg = /abc/gi
常用的元字符: . 匹配除換行符以外的任意字符 w 匹配字母、數(shù)字、下劃線或漢字 W 匹配任意不是字母,數(shù)字,下劃線,漢字的字符 s 匹配任意的空白符 S 匹配任意不是空白符的字符 d 匹配數(shù)字 D 匹配任意非數(shù)字的字符 匹配單詞的開始或結(jié)束 B 匹配不是單詞開頭或結(jié)束的位置 ^ 匹配字符串的開始 $ 匹配字符串的結(jié)束
重復(fù)的限定符: *重復(fù)零次或更多次 +重復(fù)一次或更多次 ? 重復(fù)零次或一次 {n} 重復(fù)n次 {n,} 重復(fù)n次或更多次 {n,m} 重復(fù)n到m次
[aeiou] 匹配字符集 | 分支條件 () 分組 (exp) 匹配exp,并捕獲文本到自動命名的組里 (?exp) 匹配exp,并捕獲文本到名稱為name的組里,也可以寫成(?"name"exp) (?:exp) 匹配exp,不捕獲匹配的文本,也不給此分組分配組號 (?=exp) 匹配exp前面的位置, (?<=exp) 匹配exp后面的位置 (?!exp) 匹配后面跟的不是exp的位置 (? 3個標(biāo)識(flags): g 全局模式 i 不區(qū)分大小寫 m 多行模式捕獲分組: 后向引用:重復(fù)搜索前面某個分組匹配的文本。 零寬度斷言: 查找某些內(nèi)容之前和之后的東西,也就是說指定一個位置,這個位置應(yīng)該滿足一定條件(斷言) 懶惰和貪婪:貪婪-匹配盡量多的字符。懶惰-加?常用方法: 正則自身的方法: (1)test: 匹配返回true,否則返回false var reg=/boy(s)?s+ands+girl(s)?/gi; console.log(reg.test("boy and girl")); (2)exec: 該方法屬于一個比較復(fù)雜的方法,它接受一個字符串,返回的是一個數(shù)組,數(shù)組中第0個元素是匹配的子字符串,第二個元素是正則中的第一個子分組匹配的結(jié)果(如果有子分組,即正則中存在用圓括號括起來的分組),第三個是正則中第二個子分組匹配的結(jié)果(如果有第二個子分組)...以此類推,如果沒有正則子分組,那么該數(shù)組長度僅僅為1,就是匹配到的那個子字符串。同時,返回的這個數(shù)組同時還是一個對象,它擁有兩個屬性,分別為index表示當(dāng)前匹配到的子字符串所處的位置,input屬性表示被匹配的原始字符串。最后,該方法中的正則對象如果不是全局匹配,即沒有g(shù)修飾符,則每次調(diào)用只會從字符串開頭處匹配第一個結(jié)果,且每次調(diào)用結(jié)果都是一樣的。 var reg=/(w)l(w)/g; var str="hello world hello 123 hello programmer hello test"; var arr=reg.exec(str); js方法: (3)match: 全局下把全部的搜索以數(shù)組方式返回。 (4)search:返回第一次匹配的index, 不匹配則返回-1 var str="hello world"; console.log(str.search(/o/g)); (5)replace str.replace(/hello/g,"hi") (6)split:當(dāng)拆分規(guī)則不統(tǒng)一時使用 var str="how|old*are you"; var arr=str.split(/||*|s+/);ES6擴(kuò)展 實(shí)例(1)只輸入中文
(2)只數(shù)組中文和英文
(3)郵箱驗(yàn)證
(4)IP驗(yàn)證
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/96226.html
摘要:系列種優(yōu)化頁面加載速度的方法隨筆分類中個最重要的技術(shù)點(diǎn)常用整理網(wǎng)頁性能管理詳解離線緩存簡介系列編寫高性能有趣的原生數(shù)組函數(shù)數(shù)據(jù)訪問性能優(yōu)化方案實(shí)現(xiàn)的大排序算法一怪對象常用方法函數(shù)收集數(shù)組的操作面向?qū)ο蠛驮屠^承中關(guān)鍵詞的優(yōu)雅解釋淺談系列 H5系列 10種優(yōu)化頁面加載速度的方法 隨筆分類 - HTML5 HTML5中40個最重要的技術(shù)點(diǎn) 常用meta整理 網(wǎng)頁性能管理詳解 HTML5 ...
摘要:系列種優(yōu)化頁面加載速度的方法隨筆分類中個最重要的技術(shù)點(diǎn)常用整理網(wǎng)頁性能管理詳解離線緩存簡介系列編寫高性能有趣的原生數(shù)組函數(shù)數(shù)據(jù)訪問性能優(yōu)化方案實(shí)現(xiàn)的大排序算法一怪對象常用方法函數(shù)收集數(shù)組的操作面向?qū)ο蠛驮屠^承中關(guān)鍵詞的優(yōu)雅解釋淺談系列 H5系列 10種優(yōu)化頁面加載速度的方法 隨筆分類 - HTML5 HTML5中40個最重要的技術(shù)點(diǎn) 常用meta整理 網(wǎng)頁性能管理詳解 HTML5 ...
摘要:模板語法四種詞法定義二空白符號空白符號分類或稱是,是縮進(jìn)符,字符串中寫的。注意換行符會影響的兩個重要語法特性自動插入分號和規(guī)則。 筆記說明 重學(xué)前端是程劭非(winter)【前手機(jī)淘寶前端負(fù)責(zé)人】在極客時間開的一個專欄,每天10分鐘,重構(gòu)你的前端知識體系,筆者主要整理學(xué)習(xí)過程的一些要點(diǎn)筆記以及感悟,完整的可以加入winter的專欄學(xué)習(xí)【原文有winter的語音】,如有侵權(quán)請聯(lián)系我,郵箱...
閱讀 2332·2021-10-11 10:59
閱讀 2612·2021-10-11 10:58
閱讀 3318·2021-09-08 09:35
閱讀 3822·2021-09-02 15:21
閱讀 1471·2019-08-30 15:53
閱讀 2622·2019-08-29 14:16
閱讀 2081·2019-08-26 14:00
閱讀 2965·2019-08-26 13:52