이메일 목록이나 로그를 받아 보면 빈 줄이 섞이고, 같은 항목이 여러 번 나오고, 줄 끝에 보이지 않는 공백이 붙어 있습니다. 엑셀에 넣어 중복 제거를 돌리거나 짧은 스크립트를 짜기엔 번거롭습니다. 줄 단위 정리는 붙여넣고 옵션 몇 개만 켜면 끝납니다.
빈 줄과 중복을 한 번에 정리하기
줄 정리의 기본은 네 가지 연산입니다. 빈 줄 제거, 양끝 공백 제거, 중복 제거, 정렬입니다. 따로 쓰기보다 함께 켤 때 강력합니다.
예를 들어 hello , 빈 줄, world, hello, 공백 줄이 섞인 텍스트가 있다고 합시다. PiPi Worlds 줄 정리 도구에서 양끝 공백 제거, 빈 줄 제거, 중복 제거, 오름차순 정렬을 켜면 결과는 hello, world 2줄로 줄어듭니다. 남은 줄 수가 실시간으로 표시되어, 원본이 몇 줄에서 몇 줄로 정리됐는지 바로 보입니다.
전체 중복과 연속 중복은 다르다
중복 제거에는 두 종류가 있고, 결과가 꽤 다릅니다.
apple, apple, banana, apple 네 줄을 봅시다.
| 방식 | 결과 |
|---|---|
| 전체 중복 제거 | apple, banana (2줄) |
| 연속 중복 제거 | apple, banana, apple (3줄) |
전체 제거는 어디에 있든 같은 줄이면 첫 등장만 남깁니다. 연속 제거는 바로 윗줄과 같을 때만 지우므로, 마지막 apple은 위가 banana라 살아남습니다. 순서를 바꾸지 않고 연속 반복만 접고 싶을 때 연속 제거를 씁니다.
적용 순서가 결과를 좌우한다
자주 놓치는 부분입니다. 연산이 적용되는 순서가 정해져 있습니다.
양끝 공백 제거, 빈 줄 제거, 중복 제거, 정렬, 줄번호 순입니다. 이 순서가 중요한 이유는 공백 때문입니다. apple과 apple (끝에 공백)은 서로 다른 줄로 취급되어 중복이 안 잡힙니다. 공백 제거를 먼저 하기에 이런 함정이 사라집니다. 대소문자가 다른 Apple과 apple을 같은 줄로 보려면 ‘대소문자 무시’를 켜면 되고, 이때 결과에는 먼저 등장한 표기가 남습니다.
정렬과 줄번호로 마무리하기
정리가 끝난 줄을 마지막으로 다듬는 두 가지가 정렬과 줄번호입니다.
정렬은 오름차순(A→Z)과 내림차순(Z→A) 중에서 고릅니다. 여기에 줄번호를 켜면 각 줄 앞에 1., 2., 3.이 차례로 붙습니다. 중복을 없애고 정렬한 목록에 번호까지 매기면, 문서나 메일에 그대로 붙일 번호 리스트가 한 번에 완성됩니다.
그 목록, 어디서 정리하고 있나
마지막은 데이터가 머무는 곳 이야기입니다. 정리하려고 붙여넣는 줄에는 이메일 주소, 사번, 로그처럼 외부로 나가면 곤란한 값이 섞여 있는 경우가 많습니다.
PiPi Worlds 줄 정리 도구는 모든 처리가 브라우저 안에서 실행되어 입력이 전송되지 않습니다. 윈도우와 맥에서 복사해 CRLF와 LF가 섞인 텍스트도 한 번에 정규화됩니다. 정리한 목록의 글자 수가 궁금하면 글자수 세기로, 줄마다 JSON이 들어 있다면 JSON 포맷터로 이어서 확인하면 됩니다.