[英]How to search a substring in string in Swift 4?
我似乎無法在Swift 4中找到String的API。目標-C等效如下。
NSString *s = @"abcdefg";
NSString *ss = @"cde";
// just check if s contains ss
NSLog(@"%d", [s containsString:ss]);
// get range of ss in s
NSLog(@"%@", NSStringFromRange([s rangeOfString:ss]));
我錯過了什么?
編輯:
我收到此錯誤消息:
test.swift:1:19: error: cannot convert value of type 'String' to expected argument type 'String.Element' (aka 'Character')
"abcdef".contains("cde")
所以我沒有意識到我錯過了“進口基金會”......
String
將有一個
func contains<T>(_ other: T) -> Bool where T : StringProtocol
導入Foundation
后,這將可用,因為它映射到NSString
的
open func contains(_ str: String) -> Bool
Infact import Foundation
使用所有NSString
的功能擴展了Swift的String
,你可以在這里找到它的文檔 。
原因:雨燕的String
不作為演變為NSString
,因此它的橋吧,現在ATLEAST。
檢查子字符串的Swift 4解決方案是:
let string = "Hello, World"
let hasSubstring = string.contains("ello")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.