亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問使用Swift的字符串中子字符串的索引

請問使用Swift的字符串中子字符串的索引

森林海 2019-09-13 11:06:39
使用Swift的字符串中子字符串的索引我習慣在JavaScript中這樣做:var domains = "abcde".substring(0, "abcde".indexOf("cd")) // Returns "ab"Swift沒有這個功能,如何做類似的事情?
查看完整描述

3 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

測試Swift 4.2 / 4.1 / 4.0 / 3.0

使用String[Range<String.Index>]下標,您可以獲得子字符串。您需要啟動索引和最后一個索引來創建范圍,您可以按照以下方式執行此操作

let str = "abcde"if let range = str.range(of: "cd") {
  let substring = str[..<range.lowerBound] // or str[str.startIndex..<range.lowerBound]  print(substring)  // Prints ab}else {
  print("String not present")}

如果沒有為此運算符定義起始索引..<,則采用起始索引。您也可以使用str[str.startIndex..<range.lowerBound]而不是str[..<range.lowerBound]



查看完整回答
反對 回復 2019-09-16
?
長風秋雁

TA貢獻1757條經驗 獲得超7個贊

在Swift 4中:

獲取字符串中的字符索引:

let str = "abcdefghabcd"

if let index = str.index(of: "b") {

   print(index) // Index(_compoundOffset: 4, _cache: Swift.String.Index._Cache.character(1))

}

使用Swift 4從String創建SubString(前綴和后綴):

let str : String = "ilike"

for i in 0...str.count {

    let index = str.index(str.startIndex, offsetBy: i) // String.Index

    let prefix = str[..<index] // String.SubSequence

    let suffix = str[index...] // String.SubSequence

    print("prefix \(prefix), suffix : \(suffix)")

}

產量

prefix , suffix : ilike

prefix i, suffix : like

prefix il, suffix : ike

prefix ili, suffix : ke

prefix ilik, suffix : e

prefix ilike, suffix : 

如果要生成2個索引之間的子字符串,請使用:

let substring1 = string[startIndex...endIndex] // including endIndex

let subString2 = string[startIndex..<endIndex] // excluding endIndex



查看完整回答
反對 回復 2019-09-16
  • 3 回答
  • 0 關注
  • 496 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號