티스토리 뷰

이번 2017 하반기 카카오 공채 코딩시험에서 나왔던 문제를 다시 정규표현식을 이용해 풀어보려합니다.


당시엔 정규표현식을 몰랐기에 문자열 처리에 애를 먹었는데 정말 간단해지네요.



http://tech.kakao.com/2017/09/27/kakao-blind-recruitment-round-1/


문제 설명과 해설은 위의 링크를 참고하세요.



 1S2D*3T 를 문제에 맞게 분리하는게 관겁입니다.


문제에 따르면 위의 문자열은 1S , 2D*, 3T로 분리되어야 합니다.


언뜻 그냥 하드코딩으로 해도 금방할것같지만 문자열 처리가 생각보다 예외처리를 한다던지 조건이 많다보니


쉽지많은 않습니다.



정규표현식을 C++에서 이용하기 위해선


http://www.cplusplus.com/reference/regex/regex_iterator/operator++/


를 참고합니다.




------------------------------------------------------------------------------


정규표현식을 사용하기 이전엔 이랬습니다.

https://gist.github.com/PuppyRush/719d157c77581cc08f8bf06e43506a6a


돌이켜보면 참 지저분합니다. 어려운 코드는 아니지만요.


하지만 정규 표현식을 이용하면 다음과 같이 간단히 바뀝니다.






네 정말 간단해졌습니다. 또 regex 라이브러리를 효과적으로 이용해 반복자로


분리된 문자열을 쉽게 얻어 내고 있습니다.


무슨 설명이 더 필요할까요?

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함