문구를 약어로 바꿔 보세요.
IT를 좋아하는 사람들은 TLA(세 글자 약어)를 정말 좋아해요!
Portable Network Graphics 같은 긴 이름을 약어(PNG)로 바꿔 주는 프로그램을 작성해서 재미있는 전문용어를 만들어 봐요.
구두점은 다음과 같이 처리해요. 하이픈은 (공백처럼) 단어 구분자이고, 나머지 구두점은 모두 입력에서 제거할 수 있어요.
예를 들어:
| Input | Output |
|---|---|
| As Soon As Possible | ASAP |
| Liquid-crystal display | LCD |
| Thank George It's Friday! | TGIF |
이 연습 문제는 텍스트 데이터를 다뤄요. 역사적인 이유로, Haskell의 String 타입은 문자들의 리스트인 [Char]와 같은 의미예요. 텍스트 데이터를 더 효율적으로 다루려면 Text 타입을 사용할 수 있어요.
이 연습 문제를 위한 선택적인 확장으로, 다음을 해볼 수 있어요.
Haskell의 문자열 타입에 대해 읽어봐요.
package.yaml의 의존성 목록에 - text를 추가해요.
Data.Text를 다음과 같은 방식으로 임포트해요:
import qualified Data.Text as T
import Data.Text (Text)
이제 abbreviate :: Text -> Text처럼 작성하고, Data.Text의 조합 함수를 T.filter처럼 참조할 수 있어요.
Data.Text 문서를 찾아봐요.
이 부분은 전적으로 선택 사항이에요.
Exercism에 가입하고 Haskell 트랙을 연습 문제 107개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.
기본적인 공백 매칭부터 시작해 유니코드를 살펴보고, 마지막으로 negative lookbehind까지, 정규 표현식을 가볍게 파고들어 봐요. 끝으로 상태 기계를 비롯해 두문자어 문제를 푸는 다른 접근법들도 살펴봐요.