2016-07-25 66 views

回答

6

您可以使用字符串方法rangeOfString:

let link = "https://s3.amazonaws.com/brewerydbapi/beer/RXI2cT/upload_FfAPfl-icon.png" 
if let range = link.rangeOfString("_") { 
    let fileName = link.substringFromIndex(range.endIndex) 
    print(fileName) // "FfAPfl-icon.png\n" 
} 

的Xcode 8的Beta 3•斯威夫特3

if let range = link.range(of: "_") { 
    let fileName = link.substring(from: range.upperBound) 
    print(fileName) // "FfAPfl-icon.png\n" 
} 
+0

這工作完美..謝謝! –

+0

嗨Leo Dabus。你可否請你檢查我的問題,如果你有空。 :-)。我還沒有得到任何幫助。我認爲我的代碼中有一點錯誤。我認爲你可以解決它。謝謝。 http://stackoverflow.com/questions/38561293/avplayer-stop-uiactivityindicator-before-playing – ZAFAR007

3

因爲它是一個URL,您可以通過獲取到的字符串:

斯威夫特版本3

let url = URL(string: "https://s3.amazonaws.com/brewerydbapi/beer/RXI2cT/upload_FfAPfl-icon.png") 
let component = url?.lastPathComponent?.characters.split(separator:"_").map(String.init) 

print(component?.last)// Optional("FfAPfl-icon.png") 

In Swift version 2.2 or 3

let url = NSURL(string: 
let component = url?.lastPathComponent?.characters.split{$0 == "_"}.map(String.init) 

print(component?.last)