【问题标题】:swift - substring from stringswift - 字符串中的子字符串
【发布时间】:2016-09-25 11:17:40
【问题描述】:

我有一些 url 字符串,例如:

让 url1 = "https://abc/help?user_info_id=5#help-article03"

让 url2 = "https://cde?user_info_id=455&artical=4"

让 url3 = "https://ghi/help?user_info_id=5"

现在我想从这些 url 中获取 user_info_id。

url1 返回 5,url2 返回 455,url3 返回 5

这是我的代码

func getID(string: String) -> String {
    let range = string.rangeOfString("user_info_id=")
    guard let endIndex = range?.endIndex else { return "" }
    let remain = string.substringFromIndex(endIndex)

    let num = "0123456789"
    var result = ""
    for c in remain.characters {
        if num.containsString(String(c)) {
            result.append(c)
        } else {
            break
        }
    }
    return result
}

请告诉我你的想法。谢谢!

【问题讨论】:

标签: ios swift substring


【解决方案1】:

使用(NS)URLComponents 过滤查询项:

let url1 = "https://cde?user_info_id=455&artical=4"
if let components = NSURLComponents(string: url1),
  let queryItems = components.queryItems,
  let userInfoId = queryItems.filter({$0.name == "user_info_id"}).first where userInfoId.value != nil {
  print(userInfoId.value!)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-13
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多