Javascript 如何获取从字符串开始到第一个非数字的所有数字?
如何获取从字符串开始到第一个非数字的所有数字 例如,我想从'12345abc'得到12345,另一个例子从'5678kkk'得到5678 有什么方法可以做到这一点吗?使用Javascript 如何获取从字符串开始到第一个非数字的所有数字?,javascript,Javascript,如何获取从字符串开始到第一个非数字的所有数字 例如,我想从'12345abc'得到12345,另一个例子从'5678kkk'得到5678 有什么方法可以做到这一点吗?使用parseInt(),因为它将清除除数字字符以外的所有字符,因此您不需要自定义逻辑来获取所述的数值: console.log(parseInt('12345abc')使用 let str='5678kkk'; log(parseInt(str))您可以使用RegExp#match和^锚点,从开头查找数字字符: const
parseInt()
,因为它将清除除数字字符以外的所有字符,因此您不需要自定义逻辑来获取所述的数值:
console.log(parseInt('12345abc')代码>使用
let str='5678kkk';
log(parseInt(str))
您可以使用RegExp#match
和^
锚点,从开头查找数字字符:
const string=“12345abc”;
常量matches=string.match(/^\d+/);
//如果找不到匹配项,请后退
常量数字=(匹配| |[])[0];
控制台日志(编号)天啊,我真是个白痴。这看起来很简单,但直到现在我才知道。谢谢@梦想没关系。很高兴帮助您。@请注意,这将使其成为一个有效的号码,例如,01234
将变为1234
,IOW:您将在开始时松开0,这取决于您需要什么。此号码可能可以,但如果说要获得电话号码,则不会……谢谢。直到现在我才知道。@Dreams-享受适用于每个人的新学习:)很高兴帮助你!通常情况下,包含基数是个好主意。在询问之前,您尝试了什么?您能发布代码吗?+1是最通用的解决方案。parseInt对于这种特定的情况会有所帮助,但是当您想要获取字符串末尾的数字时,它是无用的。但是,如果要防止字符串无法匹配时出现TypeError,请修改以下语句:(“12345abc.match(/^\d+/)| |[])[0]@Delvian——谢谢您指出。已发表评论。