首页 > 解决方案 > 获取子字符串后的数字

问题描述

我有以下字符串:

var str = "row 13213 applecare!teddytest!minervahasppv - 125";

我想在“行”(13213)之后提取数字,我试过:

str = str.replace(regExWhiteSpace, '');
rowMatch = /row([0-9]+)/g.exec(str);
rowNumber = rowMatch[1];

它可以工作,但是如果字符串是这样的:

var str = "row 13213 456applecare!teddytest!minervahasppv - 125";

号码是 13213456,我不希望这样。

我真的很感激任何帮助。

标签: javascriptregexstring

解决方案


您不应该删除空格,匹配row1+ 数字之间的可选空格:

var rowMatch = /row\s*(\d+)/.exec(str);

请参阅正则表达式演示\s*将匹配任何零个或多个空白字符。

请参阅 JavaScript 演示:

var str = "row 13213 applecare!teddytest!minervahasppv - 125";
var rowMatch = /row\s*(\d+)/.exec(str);
if (rowMatch) {
 console.log( rowMatch[1] );
}


推荐阅读