mngon
article thumbnail
๊นŒ๋‹ค๋กญ๊ธฐ๋กœ ์†Œ๋ฌธ๋‚œ ์Šค์œ„ํ”„ํŠธ์˜ ๋ฌธ์ž์—ด์— ์กฐ๊ธˆ์ด๋ผ๋„ ์ต์ˆ™ํ•ด์ง€๊ธฐ ์œ„ํ•ด์„œ String์˜ ์ž์ฃผ ์“ฐ๋Š”, ์œ ์šฉํ•œ ํ•จ์ˆ˜๋ฅผ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.

 

 

https://developer.apple.com/documentation/swift/string

 

Apple Developer Documentation

 

developer.apple.com

 

์šฐ์„  ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€์˜ String์„ ์‚ดํŽด๋ณด์ž๋ฉด

 

 

๊ตฌ์กฐ์ฒด์ด๊ณ , ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๊ฐ™์ด character๊ฐ€ ๋ชจ์ธ ์ง‘ํ•ฉ์ด๋‹ค. 

 

๋ฌธ์ž์—ด์„ ๋ฐฐ์—ด๋กœ

๋ฌธ์ž์—ด์˜ ์š”์†Œ ํ•˜๋‚˜ํ•˜๋‚˜๋ฅผ ๋ฐฐ์—ด๋กœ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. Array()๋ฅผ ์‚ฌ์šฉํ•ด์ฃผ๋ฉด ๋˜๋Š”๋ฐ ์ฝ”๋“œ ์˜ˆ์ œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

let name: String = "Swift"
let arrName: = Array(name)
print(arrName)	// ["S", "w", "i", "f", "t"]

 

 

๋ฌธ์ž์—ด์˜ ๊ธธ์ด ๊ตฌํ•˜๊ธฐ

๊ธธ์ด๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฐฐ์—ด๊ณผ ๊ฐ™๋‹ค. ๊ธธ์ด๊ฐ€ 0์ธ์ง€์˜ ์—ฌ๋ถ€๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜๋„ ๊ฐ™๋‹ค.

let string = "A Unicode string value that is a collection of characters."
print(string.count) 	//	58

let empty = ""
print(empty.isEmpty)	//	true
print(string.isEmpty)	//	false

 

 

๋ฌธ์ž์—ด ํ•ฉ์น˜๊ธฐ

๋ฌธ์ž์—ด์„ ํ•ฉ์น˜๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

var str = "Swift"
str.append(" is Hard.")
print(str)	//	"Swift is Hard."


var str1 = "ABC"
var str2 = "DEFG"
print(str1 + str2)	//	"ABCDEFG"

 

 

๋ฌธ์ž์—ด ๋‹ค๋ฃจ๊ธฐ ( uppercased(), lowercased(), isNumber, isLetter, isUppercase, isLowercase ... )

์†Œ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๋ฐ”๊พธ๊ฑฐ๋‚˜, ์ด ๋ฌธ์ž์—ด์˜ ์š”์†Œ๊ฐ€ ์ˆซ์ž์ธ์ง€ ๋ฌธ์ž์ธ์ง€๋„ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค.

let str = "lower"
print(str3.uppercased())	//	"LOWER"

let str = "UPPER"
print(str4.lowercased())	//	"upper"

let char = "a" as Character	
print(char.isNumber)	//	false
print(char.isLetter)	//	true
print(char.isUppercase)	//	false
print(char.isLowercase)	//	true
print(char.isASCII)	//	true
print(char.asciiValue)	//	Optional(97) -> ์–ธ๋ž˜ํ•‘ ํ•ด์ค˜์•ผ ํ•จ

let num = "1"
print(num.isNumber)	//	true

๋ฌธ์ž ํŒ๋‹จ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜ํ•  ์ ์€ ์œ„์ฒ˜๋Ÿผ Character ์ž๋ฃŒํ˜•์œผ๋กœ ๋ฐ”๊ฟ”์ค˜์•ผ ํ•œ๋‹ค. String์—๋Š” ์ด ํ•จ์ˆ˜๋“ค์ด ๋“ค์–ด์žˆ์ง€ ์•Š๋‹ค.

๋˜ ascii ๊ฐ’์„ ์–ป์„ ๋•Œ๋Š” ์˜ต์…”๋„ ๊ฐ’์œผ๋กœ ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ์— ์–ธ๋ž˜ํ•‘์„ ํ•ด์ค˜์•ผ ํ•œ๋‹ค.

 

 

๋ฌธ์ž์—ด์˜ ์‹œ์ž‘๊ณผ ๋

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๋ณด๋ฉด ์ข…์ข… ๋ฌธ์ž์—ด์˜ ๋งจ ์ฒ˜์Œ๊ณผ ๋์„ ๋‹ค๋ฃจ๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ์žˆ๋‹ค. ๋˜ ๊ทธ ๋ฌธ์ž๊ฐ€ ๋ฌธ์ž์—ด์— ์กด์žฌํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋„ ์•Œ ์ˆ˜ ์žˆ๋Š” ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

var str = "ABCDE"
print(str.hasPrefix("A"))	//	ture -> ์ ‘๋‘์–ด ํŒ๋‹จ
print(str.hasSuffix("E"))	//	ture -> ์ ‘๋ฏธ์–ด ํŒ๋‹จ
print(str.contains("A"))	//	true -> ์กด์žฌ ํŒ๋‹จ
print(str.first)	//	Optional("A")
print(str.last)		//	Optional("B")

์—ฌ๊ธฐ์„œ ๋˜ .first, .last ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” ์˜ต์…”๋„ ๊ฐ’์ด ์ถœ๋ ฅ๋˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์–ธ๋ž˜ํ•‘์„ ํ•ด์ค˜์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

 

๊ต‰์žฅํžˆ ๊ธฐ์ดˆ์ ์ธ ํ•จ์ˆ˜๋“ค์ด์ง€๋งŒ ์ด ํ•จ์ˆ˜๋“ค์„ ์•Œ๊ณ  ๋ชจ๋ฅด๊ณ  ์ฐจ์ด๊ฐ€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š”๋ฐ ์ƒ๋‹นํ•œ ์ฐจ์ด๊ฐ€ ์žˆ์—ˆ๋‹ค. ์ด์™ธ์— ๋‹ค์–‘ํ•œ ํ•จ์ˆ˜๋“ค์ด ์กด์žฌํ•˜์ง€๋งŒ ์ผ๋‹จ ์ค‘์š”ํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋˜๋Š” ํ•จ์ˆ˜๋“ค๋งŒ ๋ชจ์•„์„œ ์ ˆ๋Œ€ ์žŠ์–ด๋จน์ง€ ๋ง์ž๋Š” ์ƒ๊ฐ์œผ๋กœ ์ •๋ฆฌ๋ฅผ ํ•ด๋ณด์•˜๋‹ค. ์ •๋ฆฌํ•˜๋ฉด์„œ ๋А๋‚€ ๊ฑด string์€ ๋ฐฐ์—ด๋กœ ์ƒ๊ฐํ•ด๋„ ๊ดœ์ฐฎ์„ ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

profile

mngon

@๋ง๊ณค

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!