我有像这样的字符串
(123)abc
defg(456)
hijkl
(999)
7
我希望能够逐个使用正则表达式匹配这些字符串,以提取其中以'('开头,中间有数字,然后是')'以及零个或多个字符的任何数字。所以,在上述5个示例中,我将匹配第一个示例中的123,在第二和第三个示例中没有匹配项,在第四个示例中匹配999,在第五个示例中没有匹配项。
我尝试过这个方法。
var regex = new RegExp("^\((\d+)\)", "gm");
var matches = str.match(regex);
但是匹配总是返回null。我做错了什么吗?
我在regex101上尝试了这个正则表达式,看起来它是有效的,所以我不知道为什么代码不起作用。
RegExp
构造函数时,您需要为模式和字符串文字提供转义序列 --new RegExp("^\\((\\d+)\\)", "gm")
。 - Jonathan Lonowski