2010-01-18 60 views
2

我有一个这样的数字串的:解析一个字符一个字符串

var info = "Information4Table" 
var next = "Joe5Table" 
var four = "ERweer11Table" 
var nice = "ertertertn14Table" 

我想解析出第一个字和字符串Table之间的数字。所以对于第一项,我想得到4,最后我想得到14。在Javascript/jQuery中做这件事最好的方法是什么?

回答

3

您可以使用正则表达式来从字符串数量:

var n = /\d+/.exec(info)[0]; 
2

另一种选择是使用正则表达式来取号码的开出的字符串:

var my_str="ERweer11Table"; 
var my_pattern=/\d+/g; 
document.write(my_pattern.match(patt1)); 

这将输出“11”

2

您可以使用正则表达式只是这样的事情,尤其是得心应手/高性能如果模式没有改变:

var regex = new RegExp(/[0-9]+/); // or \d+ will also capture all digits 
var matches = +regex.exec(yourStringHere); 
var value = matches ? matches[0] : ""; 

保持周围的regex对象,你可以用它为您的所有处理需求。如果字符串中没有数字,则匹配变量将包含空值,如果有一个或多个匹配,则匹配变量将包含匹配数组。该值将包含您的编号。前导'+'运算符确保它是数字类型而不是字符串类型。