如果我有如下字符串:
1603202_15.jpg
我想在_
和.
之间提取文字。请注意,字符串中可以包含任意数量的下划线,但其中只有一个点。
答案 0 :(得分:1)
简单的字符串操作(假设扩展中没有_
):
var result = str.substring(str.lastIndexOf('_') + 1, str.lastIndexOf('.'));
这假设您希望在_
之前的最后.
之间获取字符串(您也可以使用str.indexOf('.')
btw。)。如果您想在第一个 _
之间获取字符串,请改用str.indexOf('_')
。
答案 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。然后删除_和。获得内部字符串。