当前位置:  开发笔记 > 编程语言 > 正文

正则表达式,从字符串中选择第一个数字

如何解决《正则表达式,从字符串中选择第一个数字》经验,为你挑选了1个好方法。

我有一个字符串

var str = "14??? 7???? 12??? 7????"; 

我需要在字符串中选择第一个数字(14,7,12,7).

我编写了以下代码的代码,但是这段代码选择了分开的数字(1,4,7,1,2,7):

for (var i = 0; i < str.length; i++) {
    newStr = str.match(/\d/g);
}

vks.. 6

你的正则表达式的问题在于它+之后缺少量词\d.\d只匹配一个号码.

您可以使用\d+匹配所有数字.该+量词将匹配一个或多个前面类的.

或者,您也可以使用[0-9]+.

Regex101演示

var str = '14??? 7???? 12??? 7????';
var matches = str.match(/\d+/g);

console.log(matches);
document.write('
' + JSON.stringify(matches, 0, 4) + '
');



1> vks..:

你的正则表达式的问题在于它+之后缺少量词\d.\d只匹配一个号码.

您可以使用\d+匹配所有数字.该+量词将匹配一个或多个前面类的.

或者,您也可以使用[0-9]+.

Regex101演示

var str = '14??? 7???? 12??? 7????';
var matches = str.match(/\d+/g);

console.log(matches);
document.write('
' + JSON.stringify(matches, 0, 4) + '
');
推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有