본문 바로가기
Book Review/IT

인간 vs. AI 정규표현식 문제 풀이 대결

by mjk0618 2023. 10. 17.

본 게시글은 제이펍(Jpub) 인간 vs. AI 정규표현식 문제 풀이 대결 서평단 활동의 일환으로 작성되었습니다.

 

AI와 자연어처리에 깊은 관심을 갖고 있는 만큼 관련 도서를 읽는 것을 매우 좋아합니다. 오랜 시간 동안 독서에 시간을 투자한다고 말하기엔 부족하지만, 책을 통해 새로운 지식을 얻는 것은 언제나 즐겁고 유익한 일입니다. 그런데 우연한 기회에 제이펍 인스타그램 게시글을 통해 '인간 vs. AI 정규표현식 문제 풀이 대결' 이라는 책을 보게 되었고, 서평단을 모집한다는 소식에 곧장 지원했습니다. 며칠 뒤 정말 감사하게도 서평단에 선발되었고 주어진 기간 동안 책을 읽은 후 리뷰하게 되었습니다.

 

사실 정규표현식의 기능 자체는 정말 강력하지만, 흔히 사용되는 문법이냐고 묻는다면 자신있게 답하기가 어렵습니다. 제가 경험이 부족하기 때문일 수도 있지만, 일반적인 개발 과정에서 자주 사용되는지는 모르겠습니다. 정규표현식은 복잡한 조건문이나 문자열 조작을 짧은 코드로 대체할 수 있는 매우 유용한 기법입니다. 그런데 일반적으로는 프로그래밍 언어 입문 도서의 끝부분에 이런 것도 있지만, 꽤나 복잡하고 고급 기능이다라는 식으로 언급하고 간단한 문법 몇개만을 소개하곤 합니다.

 

그런 의미에서 이 책은 정말 흥미롭습니다. 책 한 권이 모두 정규표현식에 대한 내용 뿐입니다. 그만큼 자세하고 다양한 기능에 대해서 다룹니다. 덕분에 책을 읽으면서 알지 못했던 새로운 기능에 대해서도 정말 많이 알게 되었습니다.

 

 

또 다른 흥미로운 점은 바로 AI와의 문제 풀이를 비교하며 저자의 논리가 전개된다는 점입니다. 저자는 정규표현식을 활용하여 해결할 수 있는 문제를 정의하고, 자신의 생각을 바탕으로 코드를 작성합니다. 그리고 ChatGPT와 코파일럿에게 이 문제의 풀이를 요청합니다. 결과를 자신의 코드와 비교하면서, 저자와 AI가 작성한 코드를 비교하면서 장단점을 짚어 설명합니다.

 

AI가 복잡한 정규 표현식 문제까지 풀 수 있다는 점에 놀랐고, 정규표현식과 AI의 개념을 재미있게 결합한 저자의 창의력에도 놀랐습니다. 책 전반에 걸쳐 복잡한 내용을 내내 다루면 몰입도가 떨어질 텐데, 참신한 접근법으로 독자의 흥미를 적절히 유발하는 내용 구성이 재미있습니다.

 

 

책의 전체 목차는 인터넷 서점에서 확인할 수 있습니다. 먼저 정규표현식과 AI 코딩 어시스턴트에 대해 간단히 소개한 후, 정규표현식 문제를 하나씩 풀어갑니다. 정규표현식은 쉽지 않습니다. 마찬가지로 책의 내용도 쉽지는 않습니다. 게다가 시작부터 정규표현식에 대한 나름 다양한 지식을 요구하는 문제를 풀어나갑니다. 언뜻 보기에는 간단한 문자열 매칭 문제이지만, 여러 가지 변수나 조건을 고려하여 다양한 메타문자를 활용한 compact한 정규표현식을 항상 구현하도록 노력합니다. 하지만 그만큼 유익하고 배울 게 많은 책이었습니다.

 

 

정규표현식을 아예 모른다면 어려울 수도 있지만, 후반부에 정규표현식의 기본적인 개념을 다루는 부분이 수록되어있습니다. 이를 통해 개념을 점검하거나 새롭게 익히고, 천천히 책의 내용을 따라가다보면 누구나 정규표현식의 즐거움을 누릴 수 있을 것입니다. 다만 구성을 조금 바꾸어 입문자의 진입장벽을 조금 낮추는 것도 좋은 방법이 아니었을까 하는 생각이 들긴 했습니다.

 

제이펍의 공식 도서 소개글에서는 "이 책을 덮을 때쯤이면 정규표현식을 이해할 수 있게 되는 것은 물론, 똑똑하게 AI 코딩 어시스턴트를 활용해 조금 더 완벽한 코드를 완성할 수 있게 될 거예요!"라고 이 책을 소개합니다. 이 책에서 얻어갈 수 있는 두 가지를 잘 반영한 멘트라고 생각합니다. 이 책은 단순히 정규표현식에 대한 지식 뿐만 아니라, 어떻게 하면 AI에게 좋은 프롬프트를 입력하고, 내가 의도한 결과를 내놓게 할 수 있을까에 대한 인사이트도 얻어갈 수 있는 유익한 도서였습니다.

'Book Review > IT' 카테고리의 다른 글

점프 투 파이썬  (0) 2023.07.03

댓글