js 正则收集

2020-06-10  本文已影响0人  Yyyyyyyyyujie
1.指定元素中间的字符

输出结果均为数组

var str="a(123)b[456]c{789}";
//表达式: A.*?B
var regex1 = /\((.*?)\)/g;  // () 小括号及内容
var regex2 = /\[(.*?)\]/g;  // [] 中括号及内容
var regex3 = /\{(.*?)\}/g;  // {} 大括号及内容

str.match(regex1); //(123)
str.match(regex2); //[456]
str.match(regex3); //{789}

//表达式: A.*?(?=B)   不包含后面字符串B
var regex1 = /\((.*?(?=\)))/g;  // () 小括号及内容
var regex2 = /\[(.*?(?=\]))/g;  // [] 中括号及内容
var regex3 = /\{(.*?(?=\}))/g;  // {} 大括号及内容

str.match(regex1); //(123
str.match(regex2); //[456
str.match(regex3); //{789

//表达式:(?<=A).*?(?=B)   不包含前面字符串A  且 不包含后面字符串B
var regex1 = /((?<=\().*?(?=\)))/g;  // () 小括号及内容
var regex2 = /((?<=\[).*?(?=\]))/g;  // [] 中括号及内容
var regex3 = /((?<=\{).*?(?=\}))/g;  // {} 大括号及内容
            
console.log(str.match(regex1)); //123
console.log(str.match(regex2)); //456
console.log(str.match(regex3)); //789
//取多个{}中间的值 组成数组
let str = '{1}2{3}44{5}'
var regex = /(?<=\{).*?(?=\})/g;
console.log(str.match(regex)) //['1','3','5']
上一篇 下一篇

猜你喜欢

热点阅读