문자열에서 특정 위치의 문자열 추출하는 방법이 궁금합니다.

1 답변 글타래를 보이고 있습니다
  • 글쓴이
    • 1986hz
      참가자
      • 글작성 : 1
      • 답글작성 : 1

      안녕하세요.

      아이폰 앱 개발을 위해서 swift를 사용하게 되었는데, String의 index가 다른 언어의 index와 사용방법이 많이 다르네요;;;

       

      만일 “abcdefg”라는 문자열이 있을 때 특정 문자의 주변의 문자도 1개씩 같이 추출하고 싶을 때의 방법이 궁금해서 질문하게 됩니다.

      만일 특정문자가 “c”라면 “bcd”를 추출할려고 합니다.  특정 문자가 문자열 사이에 있으면 index(_:offsetBy:)를 사용할 때는 문제가 없지만, 특정 문자가 처음이거나 마지막에 있으면 String index is out of bounds가 발생합니다.

      스크린샷 2022-02-26 오후 9.19.14

       

       

       구글링을 해 보았지만 String.Index를 사용한 방법을 찾질 못하겠네요 ㅜ 혹시 String.Index를 사용할 방법은 없나요?

      그래서 생각해낸 해결 방법은 특정 문자열의 offset 을 구한후 조건문을 이용하는 방법으로 해결하기는 했습니다. 이 방법이 최선일까요?

      더 좋은 아이디어 있으면 공유 부탁드립니다. 감사합니다.

      스크린샷 2022-02-26 오후 9.44.38

    • 오동나무
      참가자
      • 글작성 : 0
      • 답글작성 : 16

      Swift의 문자열 다루기는 너무 까다롭죠..! ㅜ

      조건문의 사용이 불가피해보이긴 합니다.

      조금 다른 방법으로는 문자열을 배열로 만들어서 접근하는 방법도 있을 것 같아요.

      • 1986hz
        참가자
        • 글작성 : 1
        • 답글작성 : 1

        오동나무님, 안녕하세요

        배열로 만드는 아이디어도 좋은 것 같네요.

        답변 감사합니다 🙂

1 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

logo landscape small

사업자번호 : 743-81-02195
통신판매업 신고번호 : 제 2022-충북청주-1278 호
고객센터 : 카카오톡채널 @yagom