์ฝ๋ฉํ ์คํธ ๋ฌธ์ ๋ฅผ ํ๋ค ๋ณด๋ฉด ์์ฃผ ์ฌ์ฉํ๋ ๋ฉ์๋๋ค์ด์ง๋ง
๋น์ทํ ๊ธฐ๋ฅ ๋๋ฌธ์ธ์ง ๋งค๋ฒ ํท๊ฐ๋ฆฌ๊ณค ํ๋ค.
์ด์ฐธ์ ์ ๋๋ก ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ณ ์ ํ๋ค.
๊ณตํต์
components(separatedBy:) ๋ฉ์๋์ split ๋ฉ์๋๋
๋ฌธ์์ด์ ํน์ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๋ฐฐ์ด๋ก ๋ฐํํ๋ค.
components(separatedBy:)
Swift์ String ํ์ ์ ์ ์๋ ๋ฉ์๋
- ๊ตฌ๋ถ์ ํ์ : ๋จ์ผ ๋ฌธ์, ๋ฌธ์์ด(String) ๋๋ ๋ฌธ์์ด ๋ฐฐ์ด([String])
let text = "one,two;three four"
let componentsResult = text.components(separatedBy: [",", ";", " "])
print(componentsResult) // ["one", "two", "three", "four"]
- ๋ฐํ ํ์ : ๋ฌธ์์ด ๋ฐฐ์ด([String])
let text = "apple,banana,orange"
let fruits = text.components(separatedBy: ",") // [String] ํ์
print(fruits) //์ถ๋ ฅ: ["apple", "banana", "orange"]
- ๋น ๋ฌธ์์ด ์ฒ๋ฆฌ : ๊ตฌ๋ถ์๊ฐ ์ฐ์์ผ๋ก ์์ ๋ ๋น ๋ฌธ์์ด์ ํฌํจ
let text = "one,,two"
let parts = text.components(separatedBy: ",")
print(parts) // ["one", "", "two"]
split(separator: )
- ๊ตฌ๋ถ์ ํ์ : ๋ฌธ์(Character)
- ๋ฐํ ํ์
: ์๋ธ์คํธ๋ง ๋ฐฐ์ด([Substring])
Substring์ ์๋ ๋ฌธ์์ด์ ์ผ๋ถ๋ฅผ ์ฐธ์กฐํ๋ฏ๋ก ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ ์ธก๋ฉด์์ ๋ ํจ์จ์ ์ผ ์ ์์
ํ์ง๋ง, Substring์ ์ฅ๊ธฐ์ ์ผ๋ก ์ ์ฅํ๊ฑฐ๋ ๋ค๋ฅธ ๊ณณ์ผ๋ก ์ ์กํ๋ ค๋ฉด String์ผ๋ก ๋ณํํด์ผ ํ๋ค.
let text = "one,two,three"
let parts = text.split(separator: ",")
print(parts) // ["one", "two", "three"]
for part in parts {
print(part) // ๊ฐ๊ฐ์ ์์๋ Substring
}
// Substring์ String์ผ๋ก ๋ณํ
let strParts = parts.map { String($0) }
print(strParts) // ["one", "two", "three"]
- ๋น ๋ฌธ์์ด ์ฒ๋ฆฌ : omittingEmptySubsequences ์ต์
์ ํตํด ๋น ๋ฌธ์์ด ์๋ต ๊ฐ๋ฅ
- omittingEmptySubsequences: ๋น ๊ฒฐ๊ณผ๋ฅผ ์๋ตํ ์ง ์ฌ๋ถ (true๊ฐ ๊ธฐ๋ณธ๊ฐ)
- maxSplits: ์ต๋ ๋ถํ ํ์ (Int.max๊ฐ ๊ธฐ๋ณธ๊ฐ)
let text = "one,,two"
let parts = text.split(separator: ",", omittingEmptySubsequences: false)
print(parts) // ["one", "", "two"]
let partsEmpty = text.split(separator: ",", omittingEmptySubsequences: true)
print(partsEmpty) // ["one", "two"]
๊ฒฐ๋ก
- ๊ฐ๋จํ ๊ตฌ๋ถ์: split์ด ๋ ๊ฐ๋จํ๊ณ ํจ์จ์
- ์ฌ๋ฌ ๊ตฌ๋ถ์ ๋๋ ๋ฌธ์์ด ๊ตฌ๋ถ์: components(separatedBy:)๊ฐ ์ ํฉ
- ๋น ๋ฌธ์์ด ์๋ต: split์ omittingEmptySubsequences ์ต์ ์ ์ ๊ณตํด ์ธ๋ฐํ ์ ์ด๊ฐ ๊ฐ๋ฅ
'๐ iOS > Swift' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ Swift ] CRUD์ CoreData ํ๋ ์์ํฌ (0) | 2024.07.14 |
---|---|
[ Swift ] ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ(ARC) (0) | 2024.07.13 |
[ Swift ๊ธฐ์ด ๋ฌธ๋ฒ ] ๊ณ ์ฐจํจ์ - map, filter, reduce, forEach, compactMap, flatMap (0) | 2024.06.26 |
[ Swift ๊ธฐ์ด ๋ฌธ๋ฒ ] ํด๋ก์ (Closure) (0) | 2024.06.25 |
[ Swift ๊ธฐ์ด ๋ฌธ๋ฒ ] ํ๋กํ ์ฝ (Protocol) (0) | 2024.06.25 |