在Javascript中从URL中提取数字ID

时间:2010-07-23 06:31:06

标签: javascript regex string

与我之前的问题类似:

spliting a string in Javascript

网址现已更改,唯一编号ID不再位于网址末尾,如下所示:

/MarketUpdate/Pricing/9352730/Report

我如何从中提取数字,现在我无法使用以前的解决方案?

3 个答案:

答案 0 :(得分:6)

您可以搜索

/(\d+)/

并使用反向引用号。 1将包含数字。请注意,这需要始终用两边的斜杠分隔数字。如果您还想匹配字符串末尾的数字,请使用

/(\d+)(?:/|$)

在JavaScript中:

var myregexp = /\/(\d+)\//;
// var my_other_regexp = /\/(\d+)(?:\/|$)/;
var match = myregexp.exec(subject);
if (match != null) {
    result = match[1];
} else {
    result = "";
}

答案 1 :(得分:2)

如果网址始终如此,为什么不使用split()

var ID = url.split('/')[3];

答案 2 :(得分:1)

urlstring = "/MarketUpdate/Pricing/9352730/Report"
$str = urlstring.split("/");
alert($str[3]);

每次找到/符号时将其拆分并将其存储到数组中,然后可以使用$ str [0]

获取数组中的每个单词。