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

更新於 發佈於 閱讀時間約 4 分鐘

字串交換:

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




avatar-img
8會員
123內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
int to data: //int to data var num = -12300 let data = Data.init(bytes: &num, count: MemoryLayout.size(ofValue: num)) // bytes : 8 elements //
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 向右位移: let shiftRightBin1Result = bin1>>1 print(String(shiftRightBin1R
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 and運算 let andResult = bin1 & bin2 print(String(andResult,radix: 2))//
二進制表示方式 let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 八進制表示方式 let otc:UInt8 = 0o377 //255 十六進制表示方式 let hex:UInt8 = 0xff /
十進位轉二進位(Decimal to Binary) let dec = -813 let bin = String(UInt16(bitPattern: Int16(dec)), radix: 2) print(bin) // "1111110011010011" 十進位轉八進位(Deci
十進位轉二進位(Decimal to Binary) let dec = 813 let bin = String(dec, radix: 2) print(bin) // "1100101101" 十進位轉八進位(Decimal to Octal) let dec = 813 let o
int to data: //int to data var num = -12300 let data = Data.init(bytes: &num, count: MemoryLayout.size(ofValue: num)) // bytes : 8 elements //
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 向右位移: let shiftRightBin1Result = bin1>>1 print(String(shiftRightBin1R
以底下兩數字為例: let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 and運算 let andResult = bin1 & bin2 print(String(andResult,radix: 2))//
二進制表示方式 let bin1:UInt8 = 0b11111111 //255 let bin2:UInt8 = 0b00001000 //8 八進制表示方式 let otc:UInt8 = 0o377 //255 十六進制表示方式 let hex:UInt8 = 0xff /
十進位轉二進位(Decimal to Binary) let dec = -813 let bin = String(UInt16(bitPattern: Int16(dec)), radix: 2) print(bin) // "1111110011010011" 十進位轉八進位(Deci
十進位轉二進位(Decimal to Binary) let dec = 813 let bin = String(dec, radix: 2) print(bin) // "1100101101" 十進位轉八進位(Decimal to Octal) let dec = 813 let o
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
本文介紹了 Swift 語言中的各種數學運算子,包括基本數學運算子、複合賦值運算子、比較運算子、邏輯運算子和範圍運算子。將提供使用這些運算子的方式及其優先順序規則,讓讀者能輕鬆理解如何在程序中實現數值與邏輯運算,並掌握 Swift 中的運算子使用技巧。
本文章介紹 Swift 語言中變數的建立方法,包括變數與常數的宣告、型別推斷、型別註記以及常見資料型別。本文詳細說明瞭可選型別的意義、變數命名的規則和作用域的概念,幫助讀者更有效地使用 Swift 語言進行程式設計。
使用者回報的超級奇怪線上問題,用數字鍵盤(NumberPad)更改欄位時,送出後尾數都會消失。例如:30 ⭢ 3,52 ⭢ 5。 尋尋覓覓了兩天終於被我找到這篇,apple的奇葩的bug 重現條件 iOS17 手機設定是繁體中文語系 前一個用過的鍵盤是Cangjie倉頡 or Suchen
Emergency lockout solutions provide critical assistance when you find yourself locked out of your home, car, or office. These services are designed to
Thumbnail
這篇文章介紹了 Swift 中字串的比較方法,並討論了使用日期字串進行比較的結果。同時也介紹了數字字串、符號字串和表情符號字串的比較原理。最後指出比較日期字串還是要轉成Date才是安全的做法。
Thumbnail
字數算法 = string.count? 在swift算一個string的字數時候,很直覺的會想到用.count來算 let s = "這是幾個字呢".count print(s.count) // 6 毫無疑問的安心信賴6個字 表情符號的場合 let emoji = "😂" print
Thumbnail
一樣先來看官方文件 A view controller that provides access to documents or destinations outside your app’s sandbox. 其實就是讓你去讀取檔案App的東西 有兩種模式,Don’t copy the do
swift讀書筆記 https://docs.swift.org/swift-book/documentation/the-swift-programming-language/deinitialization/  class instance deallocated前會call deinitia
Thumbnail
swift讀書筆記 Documentation Edit descriptiondocs.swift.org objective-c 的init 會return value,swift 不會。 所有的property都必須在Init()裡面設定初始值,或設定stored property,這種
Thumbnail
其實16也會ㄏㄏ 相關討論: https://developer.apple.com/forums/thread/703145 重現步驟: 在iOS15以上,使用UIActivityViewController執行下列步驟會crash 1. 開啟UIActivityViewControlle
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
本文介紹了 Swift 語言中的各種數學運算子,包括基本數學運算子、複合賦值運算子、比較運算子、邏輯運算子和範圍運算子。將提供使用這些運算子的方式及其優先順序規則,讓讀者能輕鬆理解如何在程序中實現數值與邏輯運算,並掌握 Swift 中的運算子使用技巧。
本文章介紹 Swift 語言中變數的建立方法,包括變數與常數的宣告、型別推斷、型別註記以及常見資料型別。本文詳細說明瞭可選型別的意義、變數命名的規則和作用域的概念,幫助讀者更有效地使用 Swift 語言進行程式設計。
使用者回報的超級奇怪線上問題,用數字鍵盤(NumberPad)更改欄位時,送出後尾數都會消失。例如:30 ⭢ 3,52 ⭢ 5。 尋尋覓覓了兩天終於被我找到這篇,apple的奇葩的bug 重現條件 iOS17 手機設定是繁體中文語系 前一個用過的鍵盤是Cangjie倉頡 or Suchen
Emergency lockout solutions provide critical assistance when you find yourself locked out of your home, car, or office. These services are designed to
Thumbnail
這篇文章介紹了 Swift 中字串的比較方法,並討論了使用日期字串進行比較的結果。同時也介紹了數字字串、符號字串和表情符號字串的比較原理。最後指出比較日期字串還是要轉成Date才是安全的做法。
Thumbnail
字數算法 = string.count? 在swift算一個string的字數時候,很直覺的會想到用.count來算 let s = "這是幾個字呢".count print(s.count) // 6 毫無疑問的安心信賴6個字 表情符號的場合 let emoji = "😂" print
Thumbnail
一樣先來看官方文件 A view controller that provides access to documents or destinations outside your app’s sandbox. 其實就是讓你去讀取檔案App的東西 有兩種模式,Don’t copy the do
swift讀書筆記 https://docs.swift.org/swift-book/documentation/the-swift-programming-language/deinitialization/  class instance deallocated前會call deinitia
Thumbnail
swift讀書筆記 Documentation Edit descriptiondocs.swift.org objective-c 的init 會return value,swift 不會。 所有的property都必須在Init()裡面設定初始值,或設定stored property,這種
Thumbnail
其實16也會ㄏㄏ 相關討論: https://developer.apple.com/forums/thread/703145 重現步驟: 在iOS15以上,使用UIActivityViewController執行下列步驟會crash 1. 開啟UIActivityViewControlle