怎样从文件路径的字符串中得到文件名?

rqrq 2005-11-20 04:26:09
例如“D:\asp\index.asp”这个路径,如何得到“index.asp”的文件名呢?
用filename=split(str,"\"),然后filename(3)可以得到,但这也仅限于2级目录,没有根本的解决问题。
请教各位有没有别的方法。。
...全文
176 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
huguang 2005-11-22
  • 打赏
  • 举报
回复
其实vbscript就可以

http://tancheng.gov.cn/vbshelp/vbstoc.htm
这里可以找到相关字符串处理的函数

intSpl = instr(StrReverse(Url),"\") '最后一个"\"号,右数的位置
filename = right(Url,intSpl-1)

其中StrReverse是将字符串倒转
RincleWoo 2005-11-22
  • 打赏
  • 举报
回复
晕,试验了一下,正则匹配式是这样才正确,真抱歉
re=/([^\\]+)\.{1}\w+$/;
yuliang0828 2005-11-21
  • 打赏
  • 举报
回复
要不你就自己写个函数来做,一般不会有问题,如果你正则不会用的话?
PcVSBirds 2005-11-21
  • 打赏
  • 举报
回复
高手!支持用正则
yutian130 2005-11-21
  • 打赏
  • 举报
回复
Dim filename
Const str="D:\asp\index.asp"
filename=Mid(str,InstrRev(str,"."))
RincleWoo 2005-11-21
  • 打赏
  • 举报
回复
抱歉,没写完整;filePatch是文件路径字符串

reg=/([^\\])\.\w+/;
reg.test(filePatch);
var filename=RegExp.$1;
RincleWoo 2005-11-21
  • 打赏
  • 举报
回复
使用javascript正则表达式吧
reg=/([^\\])\.\w+/;
var filename=RegExp.$1;

rqrq 2005-11-20
  • 打赏
  • 举报
回复
谢楼上
虽然貌似不对。
filename(Ubound(filename))
moodboy1982 2005-11-20
  • 打赏
  • 举报
回复
你上面得到的filename是什么?
是数组呀。
既然是数组,那你能不能读出最后一个数据?
Temp_name=filename(filename.length-1)

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧