2023-11-09|閱讀時間 ‧ 約 4 分鐘

[swift]字串交換、切割、串接、擷取、檢查

字串交換:

let str = "被誰喜歡,又喜歡誰呢?"
// 交換
print(str.replacingOccurrences(of: ",又", with: "?"))
//被誰喜歡?喜歡誰呢?


字串去首尾:

let str = "被誰喜歡,又喜歡誰呢?"
// 去首尾
print(str.trimmingCharacters(in: CharacterSet.init(charactersIn: "呢被?歡")))
//誰喜歡,又喜歡誰呢


字串切割:

let str = "被誰喜歡,又喜歡誰呢?"
// 切割
print("用components:",str.components(separatedBy: ","))
//用components: ["被誰喜歡", "又喜歡誰呢?"]

print("用split:",str.split(separator: ","))
//用split: ["被誰喜歡", "又喜歡誰呢?"]


字串串接:

let str = "被誰喜歡,又喜歡誰呢?"
// 串接
let arr = ["接", "下", "來"]
print(arr.joined(separator: ""))
//接下來


字串擷取:

//字串擷取
//index offsetBy
let cutStr = "誠實面對自己"
let start = cutStr.index(cutStr.startIndex, offsetBy: 3)
print(String(cutStr.suffix(from: start)))
//對自己

print(String(cutStr.prefix(upTo: start)))
//誠實面

// 從後面數來 第-5個
let end = cutStr.index(cutStr.endIndex, offsetBy: -4)
print(String(cutStr.suffix(from: end)))
//面對自己

print(String(cutStr.prefix(upTo: end)))
//誠實

//index before 取之前
// 在index之前
print(String(cutStr.suffix(from: cutStr.index(before: cutStr.endIndex))))
//己

print(String(cutStr.prefix(upTo: cutStr.index(before: cutStr.endIndex))))
//誠實面對自

//index after 取之後
// 在index之後
print(String(cutStr.suffix(from: cutStr.index(after: cutStr.startIndex))))
//實面對自己

print(String(cutStr.prefix(upTo: cutStr.index(after: cutStr.startIndex))))
//誠

//直接給index類型
print(String(cutStr.prefix(4)))
//誠實面對
print(String(cutStr[..<start]))
//誠實面

//取範圍 第4個位置向後取2位
print((cutStr as NSString).substring(with: NSMakeRange(4,2)))
//自己

通過調用字符串的hasPrefix/hasSuffix方法來檢查字符串是否擁有特定前綴/後綴。兩個方法均需要以字符串作為參數傳入並傳出Boolean值。兩個方法均執行基本字符串和前綴/後綴字符串之間逐個字符的比較操作。

print(str.hasPrefix("喜歡"))//false
print(str.hasPrefix("被"))//true
print(str.hasSuffix("喜歡"))//false
print(str.hasSuffix("?"))//true




分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.