如何计算输入字段中基于数字的字符数?

How to count the number of number-based characters in an input field?

我可以得到像 e.target.value.length 这样的字符串中所有字符的计数。但是我如何只对字符串中基于数字的字符执行此操作?例如,对于像“123-abc”这样的字符串,我该如何编写一个表达式,将基于数字的字符数输出为 3 ?

首先将所有非数字替换为空字符串:

str.replace(/\D+/g, '').length

您可以使用正则表达式来计算(单个)匹配数字的数量:

const input = "123-abc";
const re = /\d{1}/g
console.log(input.match(re).length);