2014-09-04 69 views
0

我需要从包含链接的字符串中获取最后一位数字(最后一个数字)。 例如从下面的链接,我应该回到51如何获取最后/特殊字符后的数字

http://radio-pendimi.com/website/index.php/artikuj/31-miresjellja-edukata-fetare/51-permbaje-gjuhen-tende 

或从followinig一个数:

http://radio-pendimi.com/website/index.php/artikuj/30-ilace-per-zemren-rukja/9137-jeta-me-allahun-ka-shije-tjeter, 

9137应返回

$.each (path.item,function(key,val){ 
    //id_temp= val.guid.content.replace(/[^0-9 ]/g, ''); 
    id=val.guid.content; 

    var tempDiv = $('<div id="tempDiv">' + val.description + '</div>'); 
    introImg = tempDiv.find("img:first").css({"width":"100%","border-bottom":"4px solid #cd1d1d"}); 
    var staticImg = '<img src="images/pendimi-logo.png" style="width:100%;border-bottom:4px solid #cd1d1d;background:#444"/>'; 
    output+='<div id="lajme">ID = '+id; 
    output+= '<p style="height:15px;"><span style="font-size:13px;font-family:Bitter;color:gray;padding-left:7px">Kategoria: ' + val.category + '</span><span style="float:right;font-size:13px;font-family:Bitter;color:gray;margin:3px"></p>'; 
    output+='<a href="#artikujtFetar-full" onclick="showPostArtikujtFetar('+ id +')" style="text-decoration:none">'; 
    output+= '<p style="margin:0px">' + $('<div>').append(introImg).html() + '</p>'; 
    output+='<h3 style="word-wrap:break-word;font-family:Bitter;font-size:16px;color:#444;text-align:center;line-height:30px;">'+ val.title +'</h3>'; 
    output+='</a>'; 
    output+='</div>'; 
    output+='<div style="height:15px;background:rgb(210, 215, 217);"></div>'; 
    return key<3; 
}); //lexo cdo element 1 nga 1 
$('#shfaqArtikujtFetar').html(output); 

PS:我需要用法在jQuery或JavaScript中。它可能是一个正则表达式或函数,只是让它返回我需要的结果。

回答

1

另一种解决方案

\d+(?!.*\d) 

使用

var s = "http://radio-pendimi.com/website/index.php/artikuj/31-miresjellja-edukata-fetare/51-permbaje-gjuhen-tende"; 
var p = /\d+(?!.*\d)/; 
var m = s.match(p); 
console.log(m[0]); // 51 

Regex demo | JavaScript demo

+0

不错的一个!!!!!!!!!!!!!!! – vks 2014-09-04 21:25:07

+0

为什么它给我双值?结果显示为51,51 – albpower 2014-09-04 21:33:47

+0

@albpower好吧,检查更新的答案;并使用'm [0]' – hex494D49 2014-09-04 21:37:12

1
.*\/(\d+) 

这会给出所需的答案。

查看演示。

http://regex101.com/r/cH8vN2/3

+0

在主要帖子我更新了我的代码,你可以告诉我在哪里以及如何添加这个正则表达式格式? – albpower 2014-09-04 21:28:33

+0

@albpower var s =“http://radio-pendimi.com/website/index.php/artikuj/31-miresjellja-edukata-fetare/51-permbaje-gjuhen-tende”; var p = /.*\/(\d+)/; var m = s.match(p); console.log(m [0]); – vks 2014-09-04 21:32:58