| Regular Expression 은 어떠한 규칙에 따라서 문자열을 찾는 방식인데, 별거 아닌 것처럼 보여도, 정말 많은 작업을 손쉽게 해결할 수 있는 강력한 힘을 가지고 있다. 처음에는 이것에 대해서 Java 책에서 알게 됐었는데, 사실 언어와 상관 없는 표현법이기도 하고, 정말 다양한 곳에서 사용될 수 있는 강력한 무기다(이전에 Visual Studio 에서 이것을 이용하는 방법을 설명했었다. - 블로그 링크). 몇개 안써보긴 했지만, 써본 것 중에 가장 편리한 프로그램은 12noon 의 Rename Regular Expression 이라는 프로그램이다.
이왕 프로그램 소개하는거, 예제를 넣어서 살펴보겠다.
와 같은 파일들이 있다. 이것을 01-1. Qatar, Losail.mp4 와 같은 형식으로 변경하는 것이 목적이다. 내 경우는 무려 28 개나 되기 때문에(난 이런 반복 작업을 극도로 싫어한다), 일일이 파일 이름 바꾸는 것 보다는 Regular Expression 을 사용하는 것이 훨씬 편하다(이것이 수백, 수천개라고 하면 따로 알바를 고용하는 것이 나을 정도로 매우 짜증나는 작업이 된다). 일일이 과정 중에 스크린샷은 생략한다.
그러면 프로그램이 실행되고, regular expression 을 입력할 수 있게 된다. 이 프로그램이 좋은 점은 일일이 파일을 바꾸지 않아도, 바꾸기전에 미리 어떻게 바뀔지 확인해볼 수 있다. Regular expression 을 한번에 입력하고 깨끗하게 성공하면 좋겠지만, 그렇지 못한 경우 expression 을 입력해보고 올바르게 변하는지 미리 확인하면서 할 수 있다. 아무튼, 약간의 경험(경험이 없으면 삽질)만 있으면 내가 원하는 작업은 다음과 같이 할 수 있는 것을 알 수 있다(미리 보기가 있으니까 훨씬 쉽다.).
어떤 의미로 Regular Expression 은 예술적이다. 이거 만든 사람은 노벨상 줘야 한다.(물론 농담 -_-ㅋ) 예전에 Visual Studio 에서 사용할때는 매크로 대용으로 실제 코드를 만들 때 사용했는데, 역시 그 곳에서도 굉장한 작업을 쉽게 코드로 바꿔줬다. 최근에는 테스트용 코드를 기존 코드 사이에 넣어뒀는데, 이런 코드들도 regular expression 을 통해 한꺼번에 주석처리하거나, 주석을 풀거나, 그냥 그 줄을 깨끗하게 지울 수도 있도록 하는데 사용했다. 쓰면 쓸 수록 뭔가 뿌듯해지는 그런 기능이다. 아무튼, 이 좋은 기능을 파일 이름 변경에도 사용할 수 있고 미리보기 기능 때문에 regular expression 에 별로 익숙하지 않은 사람에게도 많은 도움이 되는 좋은 프로그램이다. ps. Programmable Programming Language 라 불리우는 Lisp 같은 곳에서는 더더욱 막강하게 사용할 수 있을 것 같다는 생각이 드는데, 나중에 한번 찾아봐야겠다. ps. 현실에서는 이런거 빨리 한다고 별로 알아주지도 않는다는게 문제일 듯 하다. 이걸로 5분 하고 3~4시간 노는 사람(혹은 자기 계발)보다, 이거 일일이 수정하면서 시간 낭비하느라 5~6시간 보내는 사람보고 더 노력했다고 칭찬하는 게 이 바닥이니 말이다. (상급자가 훌륭한 사람이라면, 얘기가 달라진다) 추천 태그
|


