ios - 如何使用 NSRange 从字符串中提取特定句子?

标签 ios string swift swift2 nsrange

这是我的代码:

regex.enumerateMatchesInString(parsingMemo.string, options: NSMatchingOptions(rawValue: 0), range: NSMakeRange(0, parsingMemo.length), usingBlock: { (match: NSTextCheckingResult?,_, _) -> Void in
let trange = match!.rangeAtIndex(0)
let range = Range(start: trange.location, end: trange.length)
var insideString: String = parsingMemo.string.substringWithRange(NSMakeRange(trange.location,trange.length) 

代码给出了以下错误:

Cannot convert value of type 'NSRange' (aka '_NSRange') to expected argument type 'Range' (aka 'Range')

如何修复我的代码?

最佳答案

您需要将给定的 NSRange 转换为 Swift Range。像这样的东西应该有效:

let start = parsingMemo.string.characters.startIndex.advancedBy(trange.location)
let end = start.advancedBy(trange.length)

var insideString: String = parsingMemo.string.substringWithRange(start..<end) 

关于ios - 如何使用 NSRange 从字符串中提取特定句子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36287756/

相关文章:

java - 两个字符串的比较

ios - 关闭 viewController 会重置呈现的 navigationController

php - 秦牛:始终返回“405不允许”

iphone - 在保持触摸的同时按下时隐藏 UITabBar

ios - Swift Closure 编译器错误

java - 在java字符串文字中转义反斜杠

ios - map 框。 layerForAnnotation 未被调用。绘图形状

c# - 有没有办法使用 Dapper 将每一行检索为 IDictionary<string, string> ?

swift - 工具栏正在删除我在NavigationView中的后退按钮

swift - iPhone X、iPhone XS 等相机变焦问题