我有字符串,由一个预定义的字符串+随机字母组成,如" https://www.facebook.com/ "和"userId".
我有3个预定义的社交主机字符串:
let vkPredefinedHost = "https://vk.com/"
let fbPredefinedHost = "https://www.facebook.com/"
let instPredefinedHost = "https://www.instagram.com/"
Run Code Online (Sandbox Code Playgroud)
我想要的是,提取社交ID,这是一个字符串后面跟着那个字符串(我不确切知道我得到了哪一个).
所以我的问题是:
1)如何检查字符串是否包含我预先定义的字符串之一
2)如何提取字符串后跟此字符串
例如,我得到" https://www.instagram.com/myUserId12345 ",我想得到myUserId12345
这些字符串是URL表示.创建一个URL并比较host并得到
例如path
let host = "www.instagram.com"
if let url = URL(string: "https://www.instagram.com/myUserId12345"),
url.host == host {
let userID = String(url.path.characters.dropFirst())
print(userID)
}
Run Code Online (Sandbox Code Playgroud)
必须从路径中删除第一个字符(前导斜杠).
你甚至可以写
let userID = url.lastPathComponent
Run Code Online (Sandbox Code Playgroud)
如果有更多的路径组件,并且所请求的信息是最后一个.
| 归档时间: |
|
| 查看次数: |
513 次 |
| 最近记录: |