给定以下字符串:
var snippet = "1111 West Main Street Beverly Hills, CA 90210 Phone: 123.456.7891"
如何提取“Phone:“之后的所有内容
在这种情况下我想
phone = 123.456.7891
我试过这个:
if let range = snippet.rangeOfString("Phone:") {
let phone = snippet.substringToIndex(range.startIndex)
print(phone) // prints 1111 West Main Street Beverly Hills, CA 90210
}
但这打印之前的一切,我需要之后的一切。
4条答案
按热度按时间9w11ddsr1#
在Swift 4中,使用
upperBound
和下标运算符和开值域:或者考虑修剪空白:
顺便说一下,如果您试图同时获取这两个值,正则表达式可以做到这一点:
有关Swift的早期版本,请参见previous revision of this answer。
jum4pzuy2#
对于一个非常基本的方法,假设您可以保证字符串的格式,您可以使用
.components(separatedBy: "Phone: ")
,因此索引0之前和索引1之后的任何内容ufj5ltwl3#
检查一下这个
lsmepo6l4#
只需使用
func substringFromIndex
,但将索引增加"Phone:"
的长度