Search
Duplicate

String.Index

์ƒ์„ฑ์ผ
2024/07/22 05:06
ํƒœ๊ทธ
Grammar

String.Index

String.Index ๋Š” ์Šค์œ„ํ”„ํŠธ์—์„œ ๋ฌธ์ž์—ด ๋‚ด์˜ ํŠน์ • ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํƒ€์ž…์ด๋‹ค.
์Šค์œ„ํ”„ํŠธ์˜ ๋ฌธ์ž์—ด์€ ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž๋ฅผ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋‹จ์ˆœํžˆ ์ •์ˆ˜ ์ธ๋ฑ์Šค๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋‹ค.
๋Œ€์‹ , ๋ฌธ์ž์—ด์˜ ๊ฐ ๋ฌธ์ž๋Š” String.Index ๋ฅผ ํ†ตํ•ด ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์‚ฌ์šฉ๋ฒ•

1.
์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ๋ ์ธ๋ฑ์Šค
โ€ข
startIndex
โ—ฆ
๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค
โ€ข
endIndex
โ—ฆ
๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž ๋‹ค์Œ์˜ ์ธ๋ฑ์Šค
โ—ฆ
์ด ์ธ๋ฑ์Šค๋Š” ์‹ค์ œ ๋ฌธ์ž๋ฅผ ๊ฐ€๋ฆฌํ‚ค์ง€ ์•Š์œผ๋ฏ€๋กœ ์ ‘๊ทผํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.
2.
์ธ๋ฑ์Šค ๊ณ„์‚ฐ
โ€ข
index(_:offsetBy:)
โ—ฆ
์‹œ์ž‘ ์ธ๋ฑ์Šค์—์„œ ํŠน์ • offset ๋งŒํผ ๋–จ์–ด์ง„ ์ธ๋ฑ์Šค๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค.
โ€ข
index(before:) ์™€ index(after:)
โ—ฆ
์ฃผ์–ด์ง„ ์ธ๋ฑ์Šค์˜ ์ด์ „ ๋˜๋Š” ๋‹ค์Œ ์ธ๋ฑ์Šค๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค.
3.
์ธ๋ฑ์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๋ฌธ์ž์—ด ์ ‘๊ทผ
โ€ข
์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด ๋ฌธ์ž์—ด์˜ ํŠน์ • ์œ„์น˜์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ์ œ ์ฝ”๋“œ

import Foundation let s = "Hello, Swift!" let i = 7 // ์‹œ์ž‘ ์ธ๋ฑ์Šค let startIndex = s.startIndex // ์‹œ์ž‘ ์ธ๋ฑ์Šค์—์„œ i๋งŒํผ ๋–จ์–ด์ง„ ์œ„์น˜์˜ ์ธ๋ฑ์Šค ๊ณ„์‚ฐ let targetIndex = s.index(startIndex, offsetBy: i) print(s[targetIndex]) // S
Swift
๋ณต์‚ฌ