我正在尝试匹配以下字符串,但没有成功。
到目前为止我已经这么做了。
/\[([^\]]+)(\([^\)]+)/
这是最后一部分不起作用(\([^\)]+)
。
换句话说;
var meta = "[ABC DEF](http://google.com)"
这部分有效。
meta.match(/\[([^\]]+)/) => ABC DEF
这不起作用。
meta.match(/\[([^\]]+)(\([^\)]+)/) // => null
这就是我想要的。
["ABC DEF", "http://google.com"]
任何人都知道为什么它不起作用?
答案 0 :(得分:5)
你错过了结尾]
。此外,)
不需要在字符类中进行转义。第三,您可以添加尾随)
,最后您不应将文字(
放在(...)
内,因为您不希望它位于匹配数组中。
meta.match(/\[([^\]]+)]\(([^)]+)\)/)
^ ^ ^