我尝试构建一个自定义RegExp模式,只允许输入数字,除了如果在这些数字之后输入了一些字母,它应该允许它们。但不仅是在字母前没有输入数字的情况下。
所以我做了一个很小的正则表达式,但它甚至允许输入k的m字母在开头没有任何数字。那很糟...
有人能告诉我我哪里错了吗?
例子:
const matchPattern = new RegExp(/[^0-9(k|m)?]$/, 'gi')
'2323'.match(matchPattern) - // true
'23234k'.match(matchPattern) - // true
'23234m'.match(matchPattern) - // true
'k'.match(matchPattern) - // true, BUT should be false
'm'.match(matchPattern) - // true, BUT should be false