摘要:正則簡而言之就是描述一個(gè)事件的規(guī)則設(shè)置規(guī)則,來完成我們需求的一些操作。傳入時(shí)代表所有符合條件的選項(xiàng),我的理解就是中的內(nèi)容。。。。
正則 簡而言之就是描述一個(gè)事件的規(guī)則
設(shè)置規(guī)則,來完成我們需求的一些操作。
定義
var reg=new RegExp(字符串規(guī)則,字符串選項(xiàng)); var reg=/規(guī)則/選項(xiàng);
選項(xiàng)
1 i ignore--執(zhí)行忽略大小寫的匹配 2 g gloal--執(zhí)行全局匹配(可以查看所有的匹配而不是只找到第一個(gè)匹配后就停止) 3 m mutil-line--執(zhí)行多行匹配
轉(zhuǎn)義:
w word 單詞 [a-zA-Z0-9_] s space 空白 D 非數(shù)字 [^0-9] W 非單詞 [^a-zA-Z0-9_] S 非空白 . 任意東西 . 點(diǎn)本身 斜杠本身``` 量詞:規(guī)定了幾個(gè) {n} 正好幾個(gè) /d{2}/ /d{475}/ /d{2}|d{3}/ {n,m} 最少n個(gè),最多m個(gè) /d{1,2}/ /d{2,500}/ /d{0,1}/ -> 可有可無 {n,} 最少n個(gè),最多不限 /d{2,}/ /d{1,}/ 若干 /d{0,}/ {,m} 最少不限,最多m個(gè) × ? {0,1} 可有可無 /d{0,1}/ /d?/ + {1,} 若干 /d{1,}/ /d+/ * {0,} 可以沒有,有了也不限 /d{0,}/ /d*/``` * 量詞,默認(rèn)只管前面一位 方括號(hào): [] 修飾: ^ 開始 $ 結(jié)尾 boundary 邊界 [abc] 任意一個(gè) /a|b|c/ [0-9] 區(qū)間 [^abc] 排除 /^a/ -> 以字母a開頭的東西 /[^a]/ -> 排除字母a /^[a-z]/ -> 以小寫字母開頭 /^[^a-z]/ -> 以非小寫字母開頭 test() 在字符串中查找符合正則的內(nèi)容,若查找到返回true,反之返回false. ^ $ 優(yōu)先級比 | 要高 校驗(yàn)?zāi)挲g 0-100 var reg=/^([1-9]?d|100)$/; reg.test("22"); // true search() 在字符串搜索符合正則的內(nèi)容,搜索到就返回出現(xiàn)的位置(從0開始,如果匹配的不 只是一個(gè)字母,那只會(huì)返回第一個(gè)字母的位置), 如果搜索失敗就返回 -1; 首個(gè)數(shù)字出現(xiàn)的位置 var reg=/d/; "aa1fsff".search(reg) // 1 match() 在字符串中搜索復(fù)合規(guī)則的內(nèi)容,搜索成功就返回內(nèi)容,格式為數(shù)組, 失敗就返回null var reg=/d+/img; "sssa1122s2s4".match(reg) // ["1122","2","4"] replace 查找符合正則的字符串,就替換成對應(yīng)的字符串,返回替換后的內(nèi)容。 傳入function(s,$1,$2..$99){}時(shí),代表所有符合條件的選項(xiàng),$1 ..$99 我的理解就是()中的內(nèi)容。。。。
function trim(str){ var re = /^s+|s+$/g; return str.replace(re,""); } 只能輸入數(shù)字 var oTxt=docuemnt.querySelector("#txt"); oTxt.oninput=function(){ oTxt.value=oTxt.value.replace(/D/g,""); }``` var str="在匹配成功時(shí),會(huì)將子表達(dá)式匹配到的內(nèi)容,保存到內(nèi)存中一個(gè)以數(shù)字編號(hào)的組里,可以簡單的認(rèn)為是對一個(gè)局部變量進(jìn)行了賦值,這時(shí)就可以通過反向引用方式,引用這個(gè)局部變量的值。";
str.replace(reg,function(s){ var tmp=""; for(var i=0; i< s.length; i++){ tmp+="*"; } return tmp; }); str.replace(reg,function(s){ return s.replace(/./g,"*"); })```
var str="apple babab"; str=str.replace(/(w{1})(w+)?/gi,function(s,$1,$2){ return $1.toUpperCase()+$2 });```
"onclick onmouseover onmouseout".replace(/w+/g,function(sEv){ oDiv[sEv]=function(){ do something; }; });```
function hasClass(obj,sClass){ var reg=new RegExp(""+sClass+""); return reg.test(obj.className); }```
function getQueryObject(url) { url = url == null ? window.location.href : url; var search = url.substring(url.lastIndexOf("?") + 1); var obj = {}; var reg = /([^?&=]+)=([^?&=]*)/g; search.replace(reg, function (rs, $1, $2) { var name = decodeURIComponent($1); var val = decodeURIComponent($2); val = String(val); obj[name] = val; return rs; }); return obj; }```
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/83252.html
摘要:正則起源最近看完了精通正則表達(dá)式,收獲頗豐,略過了一些晦澀難懂的理論部分,主要看了實(shí)戰(zhàn)和教程部分。然后下面說一下以上兩個(gè)基礎(chǔ)教程里沒說到的知識(shí)點(diǎn)。最后以上是我在精通正則表達(dá)式一書中得到的一些收獲,希望能分享給大家,如有錯(cuò)誤歡迎指正。 正則起源 最近看完了 《精通正則表達(dá)式》,收獲頗豐,略過了一些晦澀難懂的理論部分,主要看了實(shí)戰(zhàn)和教程部分。 下面引用一下百度百科里的內(nèi)容。 正則表達(dá)式的鼻...
摘要:舉例一使用這個(gè)正則,打印結(jié)果為使用這個(gè)正則,打印結(jié)果為舉例二打印結(jié)果如下過濾標(biāo)簽?zāi)愫妹利惖纳虾O朕D(zhuǎn)化成你好,美麗的上海如果后面加,就會(huì)進(jìn)入非貪婪模式。如果后面不加,就會(huì)進(jìn)入貪婪模式,結(jié)果為上海。你好美麗的上海。 1.創(chuàng)建一個(gè)正則表達(dá)式 方法一:使用一個(gè)正則表達(dá)式字面量,其由包含在斜杠之間的模式組成。 var reg1 = /a/; var reg2 = /ab+c/; 方法二:調(diào)用Re...
摘要:舉例一使用這個(gè)正則,打印結(jié)果為使用這個(gè)正則,打印結(jié)果為舉例二打印結(jié)果如下過濾標(biāo)簽?zāi)愫妹利惖纳虾O朕D(zhuǎn)化成你好,美麗的上海如果后面加,就會(huì)進(jìn)入非貪婪模式。如果后面不加,就會(huì)進(jìn)入貪婪模式,結(jié)果為上海。你好美麗的上海。 1.創(chuàng)建一個(gè)正則表達(dá)式 方法一:使用一個(gè)正則表達(dá)式字面量,其由包含在斜杠之間的模式組成。 var reg1 = /a/; var reg2 = /ab+c/; 方法二:調(diào)用Re...
摘要:舉例一使用這個(gè)正則,打印結(jié)果為使用這個(gè)正則,打印結(jié)果為舉例二打印結(jié)果如下過濾標(biāo)簽?zāi)愫妹利惖纳虾O朕D(zhuǎn)化成你好,美麗的上海如果后面加,就會(huì)進(jìn)入非貪婪模式。如果后面不加,就會(huì)進(jìn)入貪婪模式,結(jié)果為上海。你好美麗的上海。 1.創(chuàng)建一個(gè)正則表達(dá)式 方法一:使用一個(gè)正則表達(dá)式字面量,其由包含在斜杠之間的模式組成。 var reg1 = /a/; var reg2 = /ab+c/; 方法二:調(diào)用Re...
摘要:下面整理一些常用的正則表達(dá)式。正則表達(dá)式中可以使用編碼。每個(gè)正則表達(dá)式可帶有一個(gè)或者多個(gè)標(biāo)注用以標(biāo)明正則表達(dá)式的行為。其中表示匹配項(xiàng)在字符串中的位置,而表示應(yīng)用字符串表達(dá)式的字符串。 正則表達(dá)式非常有用,查找、匹配、處理字符串、替換和轉(zhuǎn)換字符串,輸入輸出等。下面整理一些常用的正則表達(dá)式。 常用的正則字符 正則字符 描述 :將下一個(gè)字符標(biāo)記為一個(gè)特殊字符、或一個(gè)原義字符、或一個(gè) 向...
摘要:前置知識(shí)中的正則表達(dá)式是用來匹配字符串中指定字符組合的模式。另外需要記住正則表達(dá)式也是對象。在正則表達(dá)式創(chuàng)建時(shí)更新,不執(zhí)行。替換與正則表達(dá)式匹配的子串。查找以十六進(jìn)制數(shù)規(guī)定的字符。正則表達(dá)式拓展介紹在中有兩種情況。 本文是 重溫基礎(chǔ) 系列文章的第九篇。 今日感受:時(shí)間管理-角色管理法。 系列目錄: 【復(fù)習(xí)資料】ES6/ES7/ES8/ES9資料整理(個(gè)人整理) 【重溫基礎(chǔ)】1.語...
閱讀 1602·2021-11-16 11:44
閱讀 7504·2021-09-22 15:00
閱讀 4539·2021-09-02 10:20
閱讀 1974·2021-08-27 16:20
閱讀 2404·2019-08-26 14:00
閱讀 2917·2019-08-26 11:44
閱讀 1650·2019-08-23 18:33
閱讀 1882·2019-08-22 17:28