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