javascript正则表达式多行匹配和RegExp理解
一:多行匹配
很多时候我们可以通过边界符号(^,$,\b,\B)达到我们匹配某些字符串的目的。但是如果字符串有多行呢,这个其实很简单了,只需加个m就指定为多行匹配了。实例:
?
var str = "first second\nthird fourth\nfifth sixth";
var patt = /(\w+)$/gm
console.log(str.match(patt));
结果:
?
长名短名描述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);
当然也可以使用那些短名的
结果:
["short", "short"]this has been a short,short summershortsthis has been a short, summer