首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从url获取文件名,没有时间戳,没有文件扩展名-目标C

从url获取文件名,没有时间戳,没有文件扩展名-目标C
EN

Stack Overflow用户
提问于 2017-02-15 07:08:54
回答 3查看 140关注 0票数 0

从下面不同的urls,我只需要文件名

URL 1= uploads/4/jobs/2017-02-15-05-17-05pmThe_Wolf_of_Wall_Street_-_Jordan_Belfort.pdf URL 2= uploads/4/jobs/2017-02-15-05-17-05ammaster.jpg

我需要的是

代码语言:javascript
复制
Result1 = The_Wolf_of_Wall_Street_-_Jordan_Belfort
Result2 = master
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-02-15 07:20:21

试着用这个:

代码语言:javascript
复制
let name  = "uploads/4/jobs/2017-02-15-05-17-05pmThe_Wolf_of_Wall_Street_-_Jordan_Belfort.pdf"
var names = name.components(separatedBy: "/")
let lastComponent = names[names.count - 1]

var nameOfFile:String = ""
let pm = lastComponent.components(separatedBy: "pm")
let am = lastComponent.components(separatedBy: "am")
if(pm.count > 1){
    nameOfFile = pm[1]
} else if(am.count > 1){
    nameOfFile = am[1]
}
print(nameOfFile)
票数 1
EN

Stack Overflow用户

发布于 2017-02-15 07:26:18

如果您的url将始终遵循开始命名格式。

代码语言:javascript
复制
  let urlStr = "uploads/4/jobs/2017-02-15-05-17-05pmThe_Wolf_of_Wall_Street_-_Jordan_Belfort.pdf"
  let indexStart = urlStr.index(urlStr.startIndex, offsetBy: +36)
  let str = urlStr.substring(from: indexStart )
  let indexEnd = str.index(str.endIndex, offsetBy: -4)
  let name = str.substring(to: indexEnd )
票数 1
EN

Stack Overflow用户

发布于 2017-02-15 07:24:50

您可以尝试下面的目标-C代码

代码语言:javascript
复制
NSString* string = @"uploads/4/jobs/2017-02-15-05-17-05pmThe_Wolf_of_Wall_Street_-_Jordan_Belfort.pdf";

NSArray* array = [string componentsSeparatedByString:@"/"];
NSString* lastElement = [array lastObject];

NSArray* finalArrayForPM = [lastElement componentsSeparatedByString:@"pm"];
NSArray* finalArrayForAM = [lastElement componentsSeparatedByString:@"am"];
if (finalArrayForPM.count > 1) {
    NSString* fileName = [[finalArrayForPM lastObject] stringByDeletingPathExtension];
    NSLog(@"The fileName is %@",fileName);
} else if (finalArrayForAM.count > 1) {
    NSString* fileName = [[finalArrayForAM lastObject] stringByDeletingPathExtension];
    NSLog(@"The fileName is %@",fileName);
}

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42242763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档