在javascript中解析某些字符串

时间:2015-03-28 12:52:53

标签: javascript

我有一个看起来像这样的字符串:     var string ="某事/ 123 / bah / 234 / id / 835 / param / 2343&#34 ;;

我想只针对" 835"我需要来自" id"。有什么快速的方法可以解决这个问题吗?

4 个答案:

答案 0 :(得分:0)

拆分它;拿第六个对象:

var string = "something/123/bah/234/id/835/param/2343"
var id = string.split("/")[5]; // "id" is 835 now

或者,如果您希望在id/之后找到您的ID,并且id/的位置可能会发生变化:

var string = "something/123/bah/234/id/835/param/2343".split("/");
var id = string[string.indexOf("id")+1]; // "id" is 835 now
if(id==string[0]){id="No ID found"} // ...that's just if id happens not to be in your string

答案 1 :(得分:0)

如果您要提取的数字不一定是第六部分,但您知道它在字符串id之后且由数字组成,则可以使用正则表达式

var id_part = string.match(/id\/(\d+)/)[1]

答案 2 :(得分:0)

如果网址会更改并且只保留ID但位于不同的位置,那么您可以使用正则表达式:

var id = string.match(/id\/([^\/]+)/i)[1];

答案 3 :(得分:0)

您可以使用正则表达式,并从捕获组中提取ID。无论什么位置,这都会抓住id。

var string = "something/123/bah/234/id/835/param/2343";
var regex = /\/id\/(\d+)\//g
var match = regex.exec(string)
alert(match[1]); // 835