이후에는
① 'for ID' 양식을 포함하지 않는 줄 삭제
② ID 추출 후, 원복(undo)하는 과정을
모든 양식('for user ID', 'for invalid user ID', 'invalid user ID', 'about user ID')별로 반복했었다. 귀찮은 건 물론이고, 엑셀에서 순서대로 정리하는 것도 일. 찬란한 인류문명 발전의 원동력은 귀차니즘. 더 편한 방법을 찾아보자.
꼼수 하나
VIM 정규표현식 '\v(for invalid user|for user|for|invalid user|about user)\s[^ :]+'의 검사 결과 끝에 구분기호 'ㅋ'을 추가했다.
'ㅋ' 이후의 문자열은 필요없으니 삭제.
이제 ID 문자열 왼쪽에 있는 문자열만 지우면 된다. ID가 아닌 문자열과 ID는 '공백'으로 구분되니, '공백'으로 끝나는 모든 문자열을 검사해서 삭제.
더 쉬운 꼼수
매우 편해졌다. 하지만 더
그리고 ID 문자열을 검사하는 표현식 '[^ :]+'는 캡쳐그룹을 씌웠다. 검사 결과를 저장하겠다는 얘기. 캡쳐그룹으로 저장된 결과는 역참조를 통해 불러올 수 있다.
두번째 캡쳐그룹에 저장된 ID 문자열 |
다음은 검사 결과인 전체 문자열을 역참조(\2)를 이용해서 두번째 캡쳐그룹에 저장된 ID 문자열로 일괄 치환한 결과.
꼼수가 날로 진화한다.
관련 글
댓글 없음:
댓글 쓰기