一:多行匹配
很多时候我们可以通过边界符号(^,$,\b,\B)达到我们匹配某些字符串的目的。但是如果字符串有多行呢,这个其实很简单了,只需加个m就指定为多行匹配了。实例:
var str = "first second\nthird fourth\nfifth sixth";
var patt = /(\w+)$/gm
console.log(str.match(patt));
结果:
var str2 = "first second\nthird fourth\nfifth sixth";
var patt2 = /^(\w+)/gm
console.log(str2.match(patt2 ));
结果:
长名 | 短名 | 描述 |
input | $_ | 最后匹配的字符串 |
lastMatch | $& | 最后匹配的字符 |
lastParem | $+ | 最后匹配的分组 |
leftContent | $` | 上次匹配的前面的子串 |
rightContent | $' | 上次匹配的后面的子串 |
实例:
var str = "this has been a short,short summer";
var patt = /(s)hort/g
console.log(str.match(patt));
console.log(RegExp.input);
console.log(RegExp.lastMatch);
console.log(RegExp.lastParen);
console.log(RegExp.leftContext);
console.log(RegExp.rightContext);
当然也可以使用那些短名的
结果: