Pet*_*lie 3 string indexing reverse swift
我想向后搜索一个字符串。但是我发现的所有示例都不能在当前的Swift 3.0上运行。我的XCode 8上没有可用的“ .BackwardsSearch”选项。如何实现?例:
let rPos = rIndex(sourceString, searchString)
Run Code Online (Sandbox Code Playgroud)
要么
let rPos = sourceString.rindex(of: searchString)
Run Code Online (Sandbox Code Playgroud)
XCode自动完成功能将建议这样做:
let rpos = sourceString.range(of:searchString, options:String.CompareOptions.backwards, range:nil, locale:nil)
Run Code Online (Sandbox Code Playgroud)
但是,范围和语言环境的默认值为nil,因此您可以忽略它们:
let rpos = sourceString.range(of:searchString, options:String.CompareOptions.backwards)
Run Code Online (Sandbox Code Playgroud)
并且options是这种类型,String.CompareOptions因此您只需要最后一部分:
let rpos = sourceString.range(of:searchString, options:.backwards)
Run Code Online (Sandbox Code Playgroud)
(感谢@MartinR指出缩短的版本)