切片或修剪特定整数的最后一个字符

时间:2014-03-28 22:16:37

标签: javascript trim slice

我目前在var imgSrc

中存储了一个长路径名

var是一个完整的网址,例如http://mywebsite.co.uk/fyp/login-register/images/avatars/16.png

我想只抓取最后一个斜杠的部分,所以只存储16.png,然后删除最后一个.png

我尝试使用trim()函数但不确定如何使用\作为修剪的分隔符。

一旦我完成了这个,我就需要取最后3个字符,所以只返回数字。

E.g我需要从

开始
http://www.myurl.com/images/something/16.png

一直到:

16

我想我的最后一部分由slice覆盖:

var srcID = imgSrc.slice(0,3);

网址长度并不总是相同,因此需要依赖于使用\而不是使用特定的硬编码

6 个答案:

答案 0 :(得分:1)

如何按/拆分,获取最后一部分并保留数字。

var srcID = imgSrc.split('/').pop().replace(/\D/g,'');

FIDDLE

答案 1 :(得分:1)

你可以分开'数据:

var url = 'http://mywebsite.co.uk/fyp/login-register/images/avatars/16.png';
var arr = url.split('/');
var last = arr.length - 1;
var pic = arr[last].split('.');
//--- image name in now in pic[0

答案 2 :(得分:1)

使用正则表达式:

var str ="http://www.myurl.com/images/something/16.png";
var found = str.match(/\d+/);
console.log(found[0]);

<强> jsFiddle example

答案 3 :(得分:0)

懒人的字符串操作:

使用&#34; split&#34;将字符串分解为数组的方法,以任何字符结束:

var urlPieces = imgSrc.split( "/" ),
    lastUrlPiece = urlPieces[ urlPieces.length - 1 ],
    filenamePieces = lastUrlPiece.split( "." ),
    filenameSansExtension = filenamePieces[ 0 ];

:)

答案 4 :(得分:0)

要获得最后一个“16.png”,您可以尝试使用

var last = imgSrc.substr(imgSrc.lastIndexOf('/') + 1);

答案 5 :(得分:0)

var srcID = imgSrc.substr(imgSrc.lastIndexOf('/')).match(/[\w\d]+/)[0];

srcID将等于16

您希望避免使用slice()方法,因为只有在图片的文件名长度为两个字符时才会有效。