/* * 正則的緩存區 * 一、 var num='adb1122';var reg=/(\d)\1(\d)\2/gi;console.log(num.match(reg));//[ '1122' ]二、普通字符:a b c 1 2 3 特殊字符:\d \w \D //w d 是什么三、元字符中限定符* : 匹配0到多+ : 匹配1到多? : 匹配0或1{n} : 匹配n次{n,} : 最少匹配n次{n,m} :最少匹配n次,最多匹配m次在js正則表達式中,*,+,?可以采用{}的形式表示或代替* :{0,}+ :{1,}? :{0,1}var str='45638yuikjkj';var reg=/[a-z]{2,3}?/gi;//非貪婪加上?(問號)匹配最小單位console.log(str.match(reg));三、字符匹配符[]:在正則表達式稱之為字符簇(只匹配一個字符)[a-z] :匹配a-z中的任一字符[A-Z] :匹配A-Z中的任一字符[0-9] :匹配數字0-數字9中的任一數字(\d)[0-9a-z] : 匹配數字0-數字9或a-z中任一字符[0-9a-zA-Z] : 匹配數字0-數字9或a-z或A-Z中的任一字符[abcd] :匹配字符a或字符b或字符c或字符d[1234] :匹配數字1或數字2或數字3或數字4、^ : 上檔鍵,在正則中表示取反(僅限于字符簇)[^a-z] :匹配除a-z中的任一字符[^0-9] :匹配除0-9中的任一字符[^abcd] :匹配除字符a或字符b或字符c或字符d以外的任一字符\d :匹配一個數字字符。[0-9]\D :匹配一個非數字字符。[^0-9]\w :匹配包括下劃線的任何單詞字符。[0-9a-zA-z_]\W :匹配任何非單詞字符。[^0-9a-zA-Z_]\s :匹配任何空白字符 空格 換行 制表位\S :匹配任何非空白字符。. :匹配除 "\n" 之外的任何單個字符擴展:如何匹配所有的中文字符第一種:\u5hs四、定位符定位符可以將一個正則表達式固定在一行的開始或結束。也可以創建只在單詞內或只在單詞的開始或結尾處出現的正則表達式。^ 匹配輸入字符串的開始位置$ 匹配輸入字符串的結束位置\b 匹配一個單詞邊界 開始 空格 結尾\B 匹配非單詞邊界五、轉義符\定義一個轉義符/ . ( ) { } ‘ “ [ ] * ? + ^ $ -六、選擇匹配符在正則表達式可以采用|(或的意思)代表選擇匹配符var str='hai,nodejsdfdfdfhai,php';var reg=/hai,(nodejs|php)/gi;console.log(str.match(reg)); * */
?