美文网首页
RegExp正则表达式

RegExp正则表达式

作者: 叶叶叶xxx | 来源:发表于2019-04-17 04:26 被阅读0次

转义符号 \

把"转成字符串

var reg = "\""
console.log(reg) //"

\n 换行

var reg = "abcde\nfg"
console.log(reg) //在控制台看会换行相当于回车

\r 行结束符
\t 制表符 table的缩写 table的缩进


修饰符

reg.test() 返回值为布尔值

var reg = /abcd/
var str = 'abcde'
console.log(reg.test(str))  //true

str.match() 返回值为数组

var reg = /a/g
var str = "abcabcabc"
console.log(str.match(reg)) //["a","a","a"]

reg.exec()

exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。lastIndex就是游标的位置

var str = "abababab"
var reg = /ab/g
console.log(reg.exec(str)) //ab lastIndex = 2

方括号,括号


方括号就是一个表达式

var reg = /[1234567890][1234567890][1234567890]/g
var str = "123daf333f3333gf22"
console.log(str.match(reg)) // ["123", "333", "333"]

[^]表示非 [^a]就是第一位不是a的意思

var reg = /[^a][^b]/g
var str = "ab1cd"
console.log(str.match(reg)) //["b1", "cd"]
括号:

(abc|bcd) 匹配abc或则bcd

var reg = /(ddd|aaa)[0-9]/g
var str = "abcddd1aabaaa3"
console.log(str.match(reg)) //["ddd1", "aaa3"]

元字符
//一个元字符也代表一位
\w === [0-9A-z_] //查找单词字符
\W === [^\w]  //查找非单词
\d === [0-9] //查找数字
\D === [^\d] //查找非数字
\s === [\t\n\r\v\f ] //查找空白字符串
\S === [^\s] //查找非空白字符串

单词边界
\b === 单词边界
\B === 非单词边界
var reg = /\bc/g
var str = "abc cde fgh"
console.log(str.match(reg)) //["c"]
reg = /\bcde\b/g
console.log(str.match(reg)) //["cde"]
检验首尾是否含有数字
var str = "123abc123"
var reg = /^\d|\d$/g
console.log(reg.test(str)) // true
检验首尾是否都含有数字
var str = "123abc123"
var reg = /^\d[/s/S]*\d$/g
console.log(reg.test(str)) // true

正向预查 正向断言

var str = "abaaaa"
var reg = /a(?=b)/g //查询b前面的a 
console.log(str.match(reg)) //a
reg = /a(?!b)/g //查询不跟着b的a
console.log(str.match(reg)) //aaaa

匹配以http开头以com结尾

var href = window.location.href
var reg = /(http|https):\/\/.+?\.com/g
console.log(href.match(reg)) 

相关文章

网友评论

      本文标题:RegExp正则表达式

      本文链接:https://www.haomeiwen.com/subject/ncbwwqtx.html