2012-05-17 68 views
1

的特殊子我有一個NSURL字符串:得到NSURL串

NSString *url = @"http://ht21.easou.com/mty_ZhiQianQT.mp3?src=test&name=mty&size=100"; 

什麼是讓子mty_ZhiQianQt.mp3最快的方法是什麼?

+0

你會一直有.mp3文件嗎?如果沒有,你想要提取的子字符串總是在域之後和'?'之前。字符? – Alladinian

回答

3

試試這個:

NSURL* url = [NSURL URLWithString:@"http://ht21.easou.com/mty_ZhiQianQT.mp3?src=test&name=mty&size=100"]; 
NSString *name =[NSString stringWithFormat:@"%@",[url.pathComponents objectAtIndex:1]]; 
NSLog(@"%@",name); // mty_ZhiQianQT.mp3 

只爲您的信息:

NSLog(@"%@",url.scheme); // http
NSLog(@"%@",url.host); // ht21.easou.com
NSLog(@"%@",url.lastPathComponent); // mty_ZhiQianQT.mp3

+1

雖然你的解決方案將適用於這個特定的例子,但如果url是'http:// me.com/me/song.mp3',它將不起作用。所以你可以通過改變調用來改善它:'NSString * name = [NSString stringWithFormat:@「%@」,[url lastPathComponent]];' – Alladinian

+0

@Alladinian感謝您的建議。我會編輯我的答案 – Hector