Swift-문자열

Swift 4의 문자열은 "Hello, World!"와 같이 정렬 된 문자 모음입니다. Swift 4 데이터 유형으로 표시됩니다.String, 차례로 다음 값의 모음을 나타냅니다. Character 유형.

문자열 만들기

다음과 같이 문자열 리터럴을 사용하거나 문자열 클래스의 인스턴스를 생성하여 문자열을 만들 수 있습니다.

// String creation using String literal
var stringA = "Hello, Swift 4!"
print( stringA )

// String creation using String instance
var stringB = String("Hello, Swift 4!")
print( stringB )

//Multiple line string

let stringC = """
Hey this is a
example of multiple Line
string by tutorialsPoint 

"""
print(stringC)

위의 코드를 컴파일하여 실행하면 다음과 같은 결과가 나옵니다.

Hello, Swift 4!
Hello, Swift 4!
Hey this is a
example of multiple Line
string by tutorialsPoint

빈 문자열

빈 문자열 리터럴을 사용하거나 아래와 같이 String 클래스의 인스턴스를 생성하여 빈 문자열을 생성 할 수 있습니다. Boolean 속성을 사용하여 문자열이 비어 있는지 여부를 확인할 수도 있습니다.isEmpty.

// Empty string creation using String literal
var stringA = ""

if stringA.isEmpty {
   print( "stringA is empty" )
} else {
   print( "stringA is not empty" )
}

// Empty string creation using String instance
let stringB = String()

if stringB.isEmpty {
   print( "stringB is empty" )
} else {
   print( "stringB is not empty" )
}

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

stringA is empty
stringB is empty

문자열 상수

문자열을 변수에 할당하여 수정 (또는 변형) 할 수 있는지 여부를 지정하거나 다음을 사용하여 상수에 할당하여 상수가 될지 여부를 지정할 수 있습니다. let 아래와 같이 키워드-

// stringA can be modified
var stringA = "Hello, Swift 4!"
stringA + = "--Readers--"
print( stringA )

// stringB can not be modified
let stringB = String("Hello, Swift 4!")
stringB + = "--Readers--"
print( stringB )

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

Playground execution failed: error: <EXPR>:10:1: error: 'String' is not
convertible to '@lvalue UInt8'
stringB + = "--Readers--"

문자열 보간

문자열 보간은 문자열 리터럴 내에 값을 포함하여 상수, 변수, 리터럴 및 표현식의 혼합에서 새 문자열 값을 구성하는 방법입니다.

문자열 리터럴에 삽입하는 각 항목 (변수 또는 상수)은 백 슬래시로 시작하는 한 쌍의 괄호로 묶입니다. 다음은 간단한 예입니다.

var varA = 20
let constA = 100
var varC:Float = 20.0

var stringA = "\(varA) times \(constA) is equal to \(varC * 100)"
print( stringA )

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

20 times 100 is equal to 2000.0

문자열 연결

+ 연산자를 사용하여 두 문자열 또는 문자열과 문자 또는 두 문자를 연결할 수 있습니다. 다음은 간단한 예입니다.

let constA = "Hello,"
let constB = "World!"

var stringA = constA + constB
print( stringA )

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

Hello,World!

문자열 길이

Swift 4 문자열에는 length속성이지만 전역 count () 함수를 사용하여 문자열의 문자 수를 계산할 수 있습니다. 다음은 간단한 예입니다.

var varA = "Hello, Swift 4!"

print( "\(varA), length is \((varA.count))" )

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

Hello, Swift 4!, length is 15

문자열 비교

== 연산자를 사용하여 두 문자열 변수 또는 상수를 비교할 수 있습니다. 다음은 간단한 예입니다.

var varA = "Hello, Swift 4!"
var varB = "Hello, World!"

if varA == varB {
   print( "\(varA) and \(varB) are equal" )
} else {
   print( "\(varA) and \(varB) are not equal" )
}

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

Hello, Swift 4! and Hello, World! are not equal

문자열 반복

문자열은 다시 스위프트 4에서 값의 모음이므로 루프를 사용하여 문자열을 반복 할 수 있습니다. −

for chars in "ThisString" {
   print(chars, terminator: " ")
}

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

T h i s S t r i n g

유니 코드 문자열

다음 예제와 같이 utf8 및 utf16 속성을 반복하여 문자열의 UTF-8 및 UTF-16 표현에 액세스 할 수 있습니다.

var unicodeString = "Dog???"

print("UTF-8 Codes: ")
for code in unicodeString.utf8 {
   print("\(code) ")
}

print("\n")

print("UTF-16 Codes: ")
for code in unicodeString.utf16 {
   print("\(code) ")
}

위의 코드가 컴파일되고 실행되면 다음과 같은 결과가 생성됩니다.

UTF-8 Codes: 
68 
111 
103 
63 
63 
63 


UTF-16 Codes: 
68 
111 
103 
63 
63 
63

문자열 함수 및 연산자

Swift 4는 Strings와 관련된 다양한 메소드와 연산자를 지원합니다.

Sr. 아니요 기능 / 운영자 및 목적
1

isEmpty

문자열이 비어 있는지 여부를 결정하는 부울 값입니다.

2

hasPrefix(prefix: String)

주어진 매개 변수 문자열이 문자열의 접두어로 존재하는지 여부를 확인하는 기능입니다.

hasSuffix(suffix: String)

주어진 매개 변수 문자열이 문자열의 접미사로 존재하는지 여부를 확인하는 기능입니다.

4

toInt()

숫자 문자열 값을 정수로 변환하는 함수입니다.

5

count()

문자열의 문자 수를 계산하는 전역 함수입니다.

6

utf8

문자열의 UTF-8 표현을 반환하는 속성입니다.

7

utf16

문자열의 UTF-16 표현을 반환하는 속성입니다.

8

unicodeScalars

문자열의 유니 코드 스칼라 표현을 반환하는 속성입니다.

9

+

두 문자열, 문자열과 문자 또는 두 문자를 연결하는 연산자입니다.

10

+=

기존 문자열에 문자열 또는 문자를 추가하는 연산자입니다.

11

==

두 문자열이 같은지 확인하는 연산자입니다.

12

<

한 문자열이 다른 문자열보다 작은 것으로 평가되는지 확인하기 위해 사전 식 비교를 수행하는 연산자입니다.

13

startIndex

문자열의 시작 인덱스에서 값을 가져옵니다.

14

endIndex

문자열의 끝 인덱스에서 값을 가져옵니다.

15

Indices

indeces에 하나씩 액세스합니다. 즉, 문자열의 모든 문자를 하나씩.

16

insert("Value", at: position)

위치에 값을 삽입합니다.

17

remove(at: position)

removeSubrange(range)

위치에서 값을 제거하거나 문자열에서 값 범위를 제거합니다.

18

reversed()

문자열의 역을 반환