문서편집이나 프로그래밍, 코딩 작업을 할때 단순 반복 작업을 할 경우들이 있다. 편집할 내용이 얼마 안된다면 빠른 손동작으로 수정을 하면 되겠지만 편집할 분량이 많은 때 손동작 만으로 편집을 하게 될 경우 몇날 몇일을 수정하고 확인해야 하는 지루한 작업이 될 수 있다. 어찌 보면 단순 반복작업인데 바꿔야할 내용도 편집할 분량도 많다면 컴퓨터 초보자에게는 난감한 일이 아닐 수 없다. 이럴 경우에 정규식 치환을 이용하는 것이 좋다. 아래 동영상은 에디트플러스(editplus)라는 편집기로 바꾸기를 할때 정규식 체크를 해서 대량의 데이타를 구미에 맞게 변환하는 모습을 보여준다. 몇자 안되는 변환식으로 몇날 몇일 했던 반복 작업을 순식간에 처리할 수 있다. 단, 편집할 내용에 적당한 규칙이 있어야 한다. 그러나 대부분의 반복작업의 경우 규칙이 있게 마련이다. 자유롭게 데이타를 바꾸는 것은 학습이 어느 정도 필요하므로 필요에 따라 정규식을 알고 있는 전문가나 개발자에게 도움을 구하는 것도 현명한 방법일 수 있다.



* 첫번째 바꾸기 변환식) ([a-z]+)\n ===> \1','
  - 배열문에 데이타를 일괄 적용할 때 응용할 수 있다.
* 두번째 바꾸기 변환식) ([a-z]+)\n ===> color_array[]='\1';\n
  - 자바스크립트나 액션스크립트에서 배열문을 만들때 응용할 수 있다.
* 세번째 바꾸기 변환식) ([a-z]+)\n ===> \1='$x_\1',\n
  - PHP에서 SQL 문을 만들때 응용할 수 있다.

처음 정규식을 접하는 분들은 어려워서 배우는 것을 쉽게 포기할 수 있다. 사람은 누구나 필요하면 하게 되 있다. 필요한 것부터 하나 하나 만들거나 배껴 쓰다 보면 어느 순간 전문 편집가가 되어 있을 것이다.
당신이 프로그래머라면 정규식, 스크립트 언어, 데이타베이스, 매크로들을 잘 조합하면 번역기 같은 고난이도 변환 프로그램도 만들수 있을 것이다.

다음 시간에는 실생활에 응용할 수 있는 다양한 정규식에 대해 다뤄보기로 하자!

웹프로그래머의 홈페이지정보 블로그 http://hompy.info
이올린에 북마크하기(0) 이올린에 추천하기(0)

트랙백 주소 :: http://www.hompydesign.com/tt/trackback/103

  1. Subject: 정규식으로 노가다를 줄여보자

    Tracked from Ctrl + c / Ctrl + v 2009/06/02 10:40  삭제

    이걸 이렇게 클릭 한번으로 바꾸고 싶다면, Editplus 에서 ctrl + h 를 누르고 (Editplus 뿐만 아니라 정규식을 사용할수 있는 텍스트 에디터) 이렇게 해주면 됨. 단, 첫번째 줄은 개행문자가 없기때문에. 첫출 맨 앞에서 엔터를 넣어주면 된다. 사용된 정규식을 설명하자면, . 모든 문자를 찾는다. * 별표 왼쪽에 있는 문자가 0번 또는 그 이상 일치하는 텍스트를 찾습니다. 예를 들어 "be*"를 지정하면 "b"와 "be", "bee"..

  2. Subject: 정규식 활용

    Tracked from mikacat 2010/02/13 14:38  삭제

    정규식 활용

댓글을 달아 주세요

  1. Draco 2007/06/08 15:17  댓글주소  수정/삭제  댓글쓰기

    정규식...제대로 이용하면 정말 만능의 마법봉이지만...
    예제 몇개 나와 있는 곳은 많아도, 체계적으로 설명된 곳은 별로 없죠.
    선형적인 수치계산식 알고리즘만 배운 대부분의 사람들은 예제 몇개로 정규식을 이해하고 기억했다가 활용하긴 꽤 어렵습니다.
    게다가 에디트 플러스 정규식 또 다르고 다른 에디터도 다르고, 다른 프로그래밍 언더도 또 다르고...

  2. dJiNNi 2007/06/08 16:47  댓글주소  수정/삭제  댓글쓰기

    에디트 플러스 좋은 편집기죠.
    근데 전 AcroEdit를 이용하고 있습니다. 무료이기도 하고 이미 익숙해져서이기도 하고요...
    http://www.acrosoft.pe.kr/ -> Faq 로가면 AcroEdit 정규표현식에 대한 설명이 있습니다.

  3. freeism 2007/06/08 17:50  댓글주소  수정/삭제  댓글쓰기

    흠... 항상 생각하고 있던 부분이긴 합니다만 정작 사용은 거의 못하고 있는... ㅠㅠ
    프로그래머는 아니지만, XHTML로 디자인 코딩을 하다보니 요새는 더욱 코딩의 빈도가 커져서 이런 작업을 줄여주는 요소들의 필요성을 많이 느낍니다.
    다양하고 유용한 정규식 많이 부탁드립니다~ ^ -^)

  4. progh2 2007/06/08 18:19  댓글주소  수정/삭제  댓글쓰기

    vim 에서도 정말 유용한 기술이죠 =)
    AcroEdit도 매우 유용하지만 중국어 등의 다국어용 폰트를 제대로 쓰질 못해서 아쉽더군요.. 유니코드 중국어가 깨져요. 그래서 에디트플러스 평가판을 구해서 부랴부랴 작업했던 기억이..