为什么我的正则表达式匹配城市名称和括号内数字时返回null?

为什么我的正则表达式匹配城市名称和括号内数字时返回null?

js正则表达式返回null的原因

在给定的问题中,创建了一个正则表达式对象regex,其目的是匹配含有括号的城市名称和括号内数字的子串。但是,regex.exec(citystr)返回null。

究其原因,是因为正则表达式字符串中使用了错误的转义符。正则表达式中的特殊字符需要使用反斜杠转义,而给出的正则表达式中"("被声明为普通字符,而不是一个具有特殊含义的左括号。

要使正则表达式正常工作,需要将"("转义为"("。修正后的正则表达式如下:

var regex = new RegExp("\\D+ \\(\\d+\\)", "g");

这样一来,正则表达式就会正确匹配括号内的城市名称和数字,并且regex.exec(citystr)将返回一个数组,其中包含匹配的子串。

以上就是为什么我的正则表达式匹配城市名称和括号内数字时返回null?的详细内容,更多请关注www.sxiaw.com其它相关文章!