我正在尝试编写一个JavaScript RegEx,它返回内容(可能包括嵌套的括号),该内容位于括号之间,例如此article(由Java RegEx实现)中描述的解决方案
字符串:
xxx
@connect(({ app }) => (
{
...app
}
))
xxx
结果:
({ app }) => (
{
...app
}
)
是否可以使用JavaScript RegEx来解决它?
答案 0 :(得分:0)
您可以使用以下表达式:
/ // start expression
(?<=@connect\() // positive lookbehind
\( // open parenthesis
(.|[\n\r])+ // anything, including new-lines
\) // closed parenthesis
(?=\)$) // positive lookahead
/gm // global match, multiline
var re = /(?<=@connect\()\((.|[\n\r])+\)(?=\)$)/gm;
var s = `xxx
@connect(({ app }) => (
{
...app
}
))
xxx`
console.log(s.match(re)[0]);