如何在javascript中获取下划线和点之间的文本

时间:2012-05-10 10:10:47

标签: javascript

如果我有如下字符串:

1603202_15.jpg

我想在_.之间提取文字。请注意,字符串中可以包含任意数量的下划线,但其中只有一个点。

5 个答案:

答案 0 :(得分:1)

简单的字符串操作(假设扩展中没有_):

var result = str.substring(str.lastIndexOf('_') + 1, str.lastIndexOf('.'));

这假设您希望在_之前的最后.之间获取字符串(您也可以使用str.indexOf('.') btw。)。如果您想在第一个 _之间获取字符串,请改用str.indexOf('_')

参考substringlastIndexOf

答案 1 :(得分:0)

var res = '1603202_15.jpg'.match(/_(\d+)\./)​​​​​​​​​;
console.log(res[1]);​

http://jsfiddle.net/zerkms/cpQR3/

PS:在访问第二个元素之前,您需要检查res是否不是null

PPS:如果有任何,不只是数字,那么使用

var res = '1603202_15.jpg'.match(/_([^._]+)\./)​​​​​​​​​;
console.log(res[1]);​

答案 2 :(得分:0)

var result = txt.match( /_([a-zA-Z0-9+)\./ )[ 1 ]

答案 3 :(得分:0)

var str = "123_456_789.jpg";
var value = str.substring(str.lastIndexOf("_") + 1 , str.indexOf("."));

答案 4 :(得分:0)

var input='1603202_15.jpg';
var regex=/\_.*\./;
var result=regex.exec(input);

会给你_15。然后删除_和。获得内部字符串。