首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js中,这段路径字符串,怎么用正则找出文件名或推展名

2012-09-28 
js中,这段路径字符串,如何用正则找出文件名或推展名?var teststr c:\file\attachment\201208\test.rar(

js中,这段路径字符串,如何用正则找出文件名或推展名?
var teststr = "c:\file\attachment\201208\test.rar(文件说明)sdsdsdd";

var testend = teststr.match(/\w+(?=\.w+\()w+/);//我这样写不对,值为null,我要的值为test.rar或rar

文件扩展名之后为(字符,这个是不变的,该字符串有且只有一个文件名,如果用正则找出其扩展名呢?
对正则比较熟的大虾,指点下吧,谢了

[解决办法]

JScript code
    var teststr = "c:\\file\\attachment\\201208\\test.rar(文件说明)sdsdsdd";//你这里的路径写错了    var testend = teststr.match(/([^\\]+)(\.[^\(]+)/i);     alert(testend.join('\n'))
[解决办法]
sdsdsdd这一段时随机的吧,这就难找了
[解决办法]
var teststr = "c:\file\attachment\201208\test.rar(文件说明)";

(文件说明) 这是什么?就是这么几个字,还是固定的有括号括起来的一段说明?
[解决办法]
后面跟的(文件说明)中,这个“(”是真实存在的是吧??

如果是的话,非批量的话:
JScript code
alert(teststr.split('\\')[teststr.split('\\').length-1].split('(')[0])
[解决办法]
探讨

引用:

JScript code
var teststr = "c:\\file\\attachment\\201208\\test.rar(文件说明)sdsdsdd";//你这里的路径写错了
var testend = teststr.match(/([^\\]+)(\.[^\(]+)/i);
alert(testend.join('\n'))

好像也不对啊……

[解决办法]
//获取到test.rar
var filename=teststr.split('\\')[teststr.split('\\').length-1].split('(')[0]
//获取到文件扩展名 rar
var extension=filename.split('.')[1]
[解决办法]
var testArr=teststr.split(.);
var typeNameStr=testArr[testArr.length-1];
var typeName=typeNameStr.substring(0,typeNameStr.length-13);


var testArr=teststr.split(.);
var typeNameStr=testArr[testArr.length-1];
var typeName=typeNameStr.split('(')[0];

不需要正则,直接拆分截取字符串貌似就可以了

热点排行