概念: 正則表達式是一個包含正常字符與元字符的用於匹配的字符串對象git
其餘 反向引用 \數字 匹配但不捕獲 (?:)正則表達式
. 除了換行之外的任意字符 [] 出如今[]中的任意一個字符 () 一方面提升優先級,另外一面分組 | 或 具備最低優先級 * 緊跟在前面的字符出現0次或屢次,默認儘量多的匹配 {0,} + 緊跟在前面的字符出現1次或屢次,默認儘量多的匹配 {1,} ? 緊跟在前面的字符出現0次或1次 {0,1} {n} 緊跟在前面的字符出現n次 {n,} 緊跟在前面的字符至少出現n次 {n,m} 緊跟在前面的字符出現n-m次 ^ 放在正則一開始, 表示匹配必須以 xxx 開頭 放在 [] 中表示 否認, [^abc] $ 放在正則的結尾處, 表示必須以 xxx 結尾 在替換中使用 $數字 表示組引用 \d 數字 digit \D 非數字 \s 空白(空格, 換行, ...) space \S 非空白 [\S\s] 表示任意的一個字符 \w 文字: 數字, 字母, 下劃線 word \W 非文字 \數字 引用前面匹配到的組 <div>...</div> <([^>]+)>[^<]+</\1> (?:)
. 除了換行之外的任意字符 [] 出如今[]中的任意一個字符 () 一方面提升優先級,另外一面分組 | 或 具備最低優先級 * 緊跟在前面的字符出現0次或屢次,默認儘量多的匹配 {0,} + 緊跟在前面的字符出現1次或屢次,默認儘量多的匹配 {1,} ? 緊跟在前面的字符出現0次或1次 {0,1} {n} 緊跟在前面的字符出現n次 {n,} 緊跟在前面的字符至少出現n次 {n,m} 緊跟在前面的字符出現n-m次 ^ 放在正則一開始, 表示匹配必須以 xxx 開頭 放在 [] 中表示 否認, [^abc] $ 放在正則的結尾處, 表示必須以 xxx 結尾 在替換中使用 $數字 表示組引用 \d 數字 digit \D 非數字 \s 空白(空格, 換行, ...) space \S 非空白 [\S\s] 表示任意的一個字符 \w 文字: 數字, 字母, 下劃線 word \W 非文字 \數字 引用前面匹配到的組 <div>...</div> <([^>]+)>[^<]+</\1> (?:)
經常使用方法:數組
正則.test(str) 表示這個字符串是否符合正則表達式函數
取出字符串中的數字到數組中 var str='1abdf2lkui19erehgih354hshu6'; var arr=[]; var r=/\d+/g; var m; while(m=r.exec(str)){ console.log(m); arr.push(m[0]); } console.log(arr); //["1", "2", "19", "354", "6"]
取出字符串中的數字到數組中 var str='1abdf2lkui19erehgih354hshu6'; var arr=[]; var r=/\d+/g; var m; while(m=r.exec(str)){ console.log(m); arr.push(m[0]); } console.log(arr); //["1", "2", "19", "354", "6"]
3.字符串.replace(正則,替換字符) 表示將字符串中符合正則的內容,替換成指定的字符ui
替換字符串中的數字爲* var str='1abdf2lkui19erehgih354hshu6'; var res=str.replace(/\d+/g,'*'); console.log(res); //*abdf*lkui*erehgih*hshu*
替換字符串中的數字爲* var str='1abdf2lkui19erehgih354hshu6'; var res=str.replace(/\d+/g,'*'); console.log(res); //*abdf*lkui*erehgih*hshu*