javascript - 正则表达式 - 重复否定字符类?

标签 javascript regex

简单来说,我有正则表达式:/[^0-9]+/gi

它不是作为字符串存储的,而是作为 JavaScript 正则表达式存储的。换句话说,没有引号。我的意图是返回一个字符类数组,这些字符类由数字的字符组成。

我希望在给定代码时返回此数组:/[^0-9]+/gi.exec("rgb(123, 124, 125);");

但是我只收到一个 length: 1 的数组,索引 [0]"rgb("。为什么我没有收到由其他非数字组成的数组,如 );,?

最佳答案

Why am I not getting an array consisting of the other non-digits

因为你拿错了。

"rgb(123, 124, 125);".match(/[^0-9]+/gi);

.exec() 总是返回下一个匹配项,直到没有更多的匹配项 - 它被设计为循环运行。

关于javascript - 正则表达式 - 重复否定字符类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31810410/

相关文章:

javascript - Fancytree - 将新元素添加到树节点(日期、注释等)

regex - Bash:第一次出现的字符之间的正则表达式匹配

c# - 使用 RegEx 查找所有没有数字的单词

c# - 设置一个c#正则表达式

javascript - 浏览器中不可见元素的键盘快捷键

javascript - XMLHttpRequest.open,它在远程网站上有效吗?

javascript - 如何正确使用bootstrap-vue的面板?

javascript - 在代码示例中无法理解 this 的上下文

python - 我怎样才能用正则表达式标记这个?

regex - 正则表达式 匹配正则表达式