您應該保留原來的Objective-C代碼來告訴你想要做什麼。 (我的意思是你的帖子應包含原代碼,你做了到現在爲止什麼。)
和你輸入的字符串應該是這樣的一個字符串:
var aString = "href=\"http://www.corpbpl.com/groupinfo.php?show=95\" onmousedown=\"uaction(this,{up:'90de%=%Nofi7rO6B&l=8upb1p&E%=6&ex=jXTDh5zYQLa9&})\""
在斯威夫特2:
if let
hashtag = aString.rangeOfString("http://"),
word = aString.rangeOfString("95", range: hashtag.startIndex..<aString.endIndex)
{
let hashtagWord = aString[hashtag.startIndex..<word.endIndex]
print(hashtagWord) //->http://www.corpbpl.com/groupinfo.php?show=95
}
在夫特3:
if
let hashtag = aString.range(of: "http://"),
let word = aString.range(of: "95", range: hashtag.lowerBound..<aString.endIndex)
{
let hashtagWord = aString[hashtag.lowerBound..<word.upperBound]
print(hashtagWord) //->http://www.corpbpl.com/groupinfo.php?show=95
}
幾點:(使用迅速2術語)
迅速串的rangeOfString(_:)
方法返回Range<String.Index>
,不NSRange
。 您無法將結果分配給NSRange
的變量。
返回Range
指向第一個字符中的startIndex
,返回Range
點旁邊找到的最後一個字符的endIndex
。
rangeOfString(_:options:range:locale:)
方法(在上面的代碼中看起來rangeOfString(_:range:)
)更適合在一定範圍內搜索字符串,而不是創建子字符串。
顯示你已經在斯威夫特嘗試。 – Larme
是的,我現在完成告訴 –