以下代码正确匹配{{{
和}}}
之间的所有内容,但示例为'line3',因为括号内容包含换行符。如何匹配呢?
const testcase = `
line1: {{{ content1 }}}
line2: {{{ content2 }}}
line3: {{{
content3
}}}
line4: {{{ content4 }}}
`;
const regex = /^(\s+)(.*?)(\{\{\{ [^]*? \}\}\})/gm;
let match;
while ( ( match = regex.exec(testcase) ) != null ) {
console.log(match);
}
答案 0 :(得分:2)
您可以使用此正则表达式:
/^(\s+)(.*?)({{{[^]*?}}})/gm
问题是正则表达式中{{{
之后是否存在空格,因为line3
之后有一个换行符,所以它不匹配{{{
行。