如何获取字符串中两个单词之间的数字?

时间:2013-06-17 06:32:52

标签: javascript jquery

我有一个像下面这样的字符串模式。

sales_order/view/order_id/155/key/0ee9098a18ccbca0879bfa93355fa1c7/

我想得到“order_id”和“key”文本之间的数字,这个数字可以是任意长度。 我怎样才能找到这两个词之间的数字?

这个数字'155'是动态的。

4 个答案:

答案 0 :(得分:5)

使用正则表达式:

var num = +( /order_id\/(\d+)\//.exec( str ) || '' )[ 1 ]

|| ''这件事就是没有匹配。此外,如果您特别想要检查key,只需将其添加到最后(在那里的两个//之间)

答案 1 :(得分:2)

尝试拆分这个

var url = "sales_order/view/order_id/155/key/0ee9098a18ccbca0879bfa93355fa1c7/"
var stuff = url.split('/');
var order_id = stuff['3'];    //since segment 4 will be the order id
alert("Order id is "+ order_id);

您还可以使用此方法获取各个网址细分....

答案 2 :(得分:1)

尝试http://jsfiddle.net/hSHkE/

 <div class="test">sales_order/view/order_id/155/key/0ee9098a18ccbca0879bfa93355fa1c7/</div>


var test=  $('.test').html().split('/')[3];
    alert(test);

答案 3 :(得分:1)

你走了:

var str="sales_order/view/order_id/155/key/0ee9098a18ccbca0879bfa93355fa1c7/";
var n=str.indexOf("order_id/");
var m=str.indexOf("/key");

alert(str.substring(n + ("order_id/").length,m));

Live Demo: JSFiddle