简单地说,我有正则表达式: /[^0-9]+/gi
它不是作为字符串存储,而是作为JavaScript正则表达式存储.换句话说,没有引号.我的目的是返回一个由不是数字的字符组成的字符数组.
我希望在给出代码时返回此数组: /[^0-9]+/gi.exec("rgb(123, 124, 125);");
但是我只接收阵列length: 1与索引[0]为"rgb(".为什么我没有得到一个由其他非数字组成的数组,如);或,?
为什么我没有得到由其他非数字组成的数组
因为你错了.
"rgb(123, 124, 125);".match(/[^0-9]+/gi);
Run Code Online (Sandbox Code Playgroud)
.exec() 总是返回下一个匹配,直到没有更多的匹配 - 它被设计为循环运行.