表单正则表达的问题

var str="adwera ader12312 adefs23a dfsdf3a a343535a addxcva";
var re=/a\w+[^\d]a\b/g;
var ar=str.match(re);
alert(ar);

代码运行结果为右侧哪项?


A  adwera,addxcva

B  adwera,dfsdf3a

C  addxcva,addxcva

D  dfsdf3a,addxcva

我怎么感觉A和C都对呢?

请各位大神帮我解答疑惑:

var re=/a\w+[^\d]a\b/g;

这个表达式是什么意思?

qq_Sunshine_50
浏览 1258回答 3
3回答

Q南极熊Q

\w任意单字字符+匹配前面字符1次或多次[^\d]不在括号里的数字字符,算范围吧\b字符边界g全局匹配匹配以a为开头以a为结尾,在开头和结尾之间不包含数字的字符,进行全局匹配(非全局找到第一个就停止)

慕的地3089235

var str="adwera ader12312 adefs23a dfsdf3a a343535a addxcva";因为声明里就一个addxcva,不会弹出2个addxcva啊。所以不是C

qq_Sunshine_50

再问一下,为什么C不对呢?
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript