相关疑难解决方法(0)

Swift提取正则表达式匹配

我想从匹配正则表达式模式的字符串中提取子字符串.

所以我正在寻找这样的东西:

func matchesForRegexInText(regex: String!, text: String!) -> [String] {
   ???
}
Run Code Online (Sandbox Code Playgroud)

所以这就是我所拥有的:

func matchesForRegexInText(regex: String!, text: String!) -> [String] {

    var regex = NSRegularExpression(pattern: regex, 
        options: nil, error: nil)

    var results = regex.matchesInString(text, 
        options: nil, range: NSMakeRange(0, countElements(text))) 
            as Array<NSTextCheckingResult>

    /// ???

    return ...
}
Run Code Online (Sandbox Code Playgroud)

问题是,这matchesInString提供了我的一个数组NSTextCheckingResult,其中NSTextCheckingResult.range的类型的NSRange.

NSRange是不相容的Range<String.Index>,所以它阻止我使用text.substringWithRange(...)

有没有想过如何在没有太多代码的情况下在swift中实现这个简单的事情?

regex string ios swift

157
推荐指数
8
解决办法
11万
查看次数

在Swift中将JSON字符串转换为Object的简单而干净的方法

我一直在寻找几天将一个相当简单的JSON字符串转换为Swift中的对象类型,但无济于事.

这是Web服务调用的代码:

func GetAllBusiness() {

        Alamofire.request(.GET, "http://MyWebService/").responseString { (request, response, string, error) in

                println(string)

        }
}
Run Code Online (Sandbox Code Playgroud)

我有一个快速结构Business.swift:

struct Business {
    var Id : Int = 0
    var Name = ""
    var Latitude = ""
    var Longitude = ""
    var Address = ""
}
Run Code Online (Sandbox Code Playgroud)

这是我部署的测试服务:

[
  {
    "Id": 1,
    "Name": "A",
    "Latitude": "-35.243256",
    "Longitude": "149.110701",
    "Address": null
  },
  {
    "Id": 2,
    "Name": "B",
    "Latitude": "-35.240592",
    "Longitude": "149.104843",
    "Address": null
  }
  ...
]
Run Code Online (Sandbox Code Playgroud)

如果有人引导我完成这件事,那将是一件令人高兴的事.

谢谢.

iphone json ios swift

78
推荐指数
8
解决办法
11万
查看次数

标签 统计

ios ×2

swift ×2

iphone ×1

json ×1

regex ×1

string ×1