티스토리 뷰

개발/iOS

[Swift] 문자열 나누기

DeveloperFury 2020. 1. 4. 10:43

안녕하세요 :]

Fury입니다 ㅎㅎ

 

보통 문자열을 나눌 때 많이 사용하는 방법이 "split"입니다.

특정 구분자를 이용해서 문자를 나누는 방법인데요.

특정 구분자가 없이 문자열을 나눠야 하면 어떻게 해야 할까요???

 

오늘은 String(문자열) 타입을 자르는 법을 알아보도록 할게요.

 

예를 들어 휴대폰 번호가 들어있는 문자열이라고 가정하고

아래의 예제 코드를 보겠습니다.

 

 

휴대폰 번호는 "01012345678"

저는 010-1234-5678로 표현하기 위해서

앞의 3자리, 가운데 4자리, 끝에 4자리를 나누려고 합니다.

 

그럴 때, index를 사용해서 나눌 수 있습니다.

 

먼저 첫 번째 코드 그룹을 보겠습니다.

firstIndex는 phoneNumber의 startIndex로부터 0번째 떨어진 곳,

lastIndex는 phoneNumber의 startIndex로부터 3번째 떨어진 곳,

그리고 phoneNumber[firstIndex..<lastIndex]를 해주고 있습니다.

이는 아래 그림의 해당하는 글자를 반환하게 됩니다.

 

 

다음 두 번째 코드 그룹을 보겠습니다.

firstIndex는 phoneNumber의 startIndex로부터 3번째 떨어진 곳,

lastIndex는 phoneNumber의 endIndex로부터 -4번째 떨어진 곳,

그리고 phoneNumber[firstIndex..<lastIndex]를 해주고 있습니다.

이는 아래 그림의 해당하는 글자를 반환하게 됩니다.

 

 

offsetBy는

양수(+) 일 경우 오른쪽으로

음수(-) 일 경우 왼쪽으로

이동하는 것을 알 수 있네요!!

 

마지막으로 세 번째 코드 그룹을 보겠습니다.

firstIndex는 phoneNumber의 endIndex로부터 -4번째 떨어진 곳,

lastIndex는 phoneNumber의 endIndex로부터 0번째 떨어진 곳,

그리고 phoneNumber[firstIndex..<lastIndex]를 해주고 있습니다.

이는 아래 그림의 해당하는 글자를 반환하게 됩니다.

 

 

감사합니다.

댓글