Javascript正则表达式匹配k,后面不跟数字0

Javascript正则表达式匹配k,后面不跟数字0,javascript,regex,Javascript,Regex,如何匹配后面没有数字0的k 例如,k0无效,而k1无效。试试这个 常量正则表达式=/k?!0.*/g console.log'k0k1k2'。matchregex您可以获取所有的'k'和数字,但不能获取k0,并像下面这样深入查看所有匹配: var s = 'k0k10k2000dasdasdasdk1k0' var re = /k[1-9]\d*/g; var m; while (m = re.exec(s)) { console.log(m); } // [ 'k10', index:

如何匹配后面没有数字0的k

例如,k0无效,而k1无效。

试试这个

常量正则表达式=/k?!0.*/g
console.log'k0k1k2'。matchregex您可以获取所有的'k'和数字,但不能获取k0,并像下面这样深入查看所有匹配:

var s = 'k0k10k2000dasdasdasdk1k0'
var re = /k[1-9]\d*/g;
var m;
while (m = re.exec(s)) {
  console.log(m);
}

// [ 'k10', index: 2, input: 'k0k10k2000dasdasdasdk1k0' ]
// [ 'k2000', index: 5, input: 'k0k10k2000dasdasdasdk1k0' ]
// [ 'k1', index: 20, input: 'k0k10k2000dasdasdasdk1k0' ]

尝试字符类k[1-9]为什么需要g标志?@NikaKhurashvili,g用于全局搜索,*要在k之后获取元素,需要生成模式以在k之后获取更多元素,用于exmaple控制台。记录“K0K1K2DDD”。matchregex结果为k1k2dddd@NikaKhurashvili,我是做将军的case@NikaKhurashvili,您的示例assertk1.match'/k?!0/g'[1]==k,你应该删除单引号'/k?!0/g'在正则表达式中,那么您的代码将匹配/k?!0/g