6.1正则的小括号和[ ]

mac2026-01-13  9

一、()分组

// 手机号中奖隐藏演示 // () 分组 var str = '18300668827' var re = /(\d{3})(\d{4})(\d{3})/ var newstr = str.replace(re, function($0, $1, $2, $3, $4) { console.log($0) //1830066882 console.log($1) //183 第一个小括号 console.log($2) //0066 第二个小括号 console.log($3) //882 第三个小括号 console.log($4) //0 下标 return $1 + '****' + $3 }) console.log(newstr) //183****8827

二、[ ] 或的关系 var str = ‘abcdef’ var re = /a[bkaio]cdef/

// 看看能不能匹配成功 console.log(re.test(str)) //true // []里面表示的是或的关系 只要里面的任意一个能和str匹配上 那就是就是符合true // [^abc] //这里的尖角号表示排除 就是除了abc 其他任何字符都可以 var str = 'abcdef' var re = /a[^bkaio]cdef/ console.log(re.test(str)) //false

二、非[ ] 中的^ 表示以什么开始 $是以什么结束

// 手机号匹配规则 // 以1开始 以第九位数字结束 var re = /^1[356789]\d{9}$/ // 大小写英文字母匹配规则 var re = /[a-zA-Z0-9]/ // 去空格 var str = ' a sd ' var s = str.trim() //不兼容IE8及以下 console.log(s) //asd var re = /\s+|\s$/g var ss = str.replace(re, '') console.log(ss) //asd
最新回复(0)