본문으로 건너뛰기

중복 제거 도구

텍스트에서 중복된 라인을 제거하고 유니크한 라인만 남기는 무료 온라인 도구입니다.

⚙️ Options

📝 Input Text

📊 Statistics

Total Lines0
Unique Lines0
Removed Lines0

✨ Result (Unique Lines)

Removes duplicate lines from your text. Use "Case Sensitive" to distinguish between uppercase and lowercase. Use "Sort Output" to alphabetically sort the results.

주요 기능​

  • 중복 라인 제거: 동일한 내용의 라인을 자동으로 감지하고 제거
  • 대소문자 구분: 대소문자를 구분할지 선택 가능
  • 정렬 옵션: 결과를 알파벳순으로 정렬 가능
  • 실시간 통계: 전체 라인, 유니크 라인, 제거된 라인 수 표시
  • 순서 유지: 중복을 제거하면서 원본 순서 유지 (정렬 미사용 시)

사용 방법​

기본 사용​

  1. 입력 영역에 텍스트를 입력합니다 (한 줄에 하나씩)
  2. 중복이 자동으로 제거되어 결과가 표시됩니다
  3. "복사" 버튼을 클릭하여 결과를 클립보드에 복사합니다

옵션 설정​

  • 대소문자 구분: 체크하면 "Apple"과 "apple"을 다른 것으로 취급
  • 정렬 출력: 체크하면 결과를 알파벳순으로 정렬

사용 사례​

1. 이메일 리스트 정리​

입력:
user1@example.com
user2@example.com
user1@example.com
user3@example.com

출력:
user1@example.com
user2@example.com
user3@example.com

2. 키워드 목록 정리​

마케팅이나 SEO 작업 시 중복된 키워드를 제거할 때 유용합니다.

입력:
react
javascript
react
vue
javascript
angular

출력:
react
javascript
vue
angular

3. 파일 경로 정리​

로그 파일이나 스크립트에서 중복된 경로를 제거할 때 사용합니다.

입력:
/home/user/docs
/home/user/downloads
/home/user/docs
/home/user/pictures

출력:
/home/user/docs
/home/user/downloads
/home/user/pictures

4. 데이터 정리​

CSV 파일이나 데이터베이스에서 중복 항목을 제거할 때 사용합니다.

옵션 상세 설명​

대소문자 구분 (Case Sensitive)​

체크 해제 시 (기본값)​

대소문자를 무시하고 중복을 판단합니다.

입력:
Apple
APPLE
apple
Banana

출력:
Apple
Banana

체크 시​

대소문자를 구분하여 중복을 판단합니다.

입력:
Apple
APPLE
apple
Banana

출력:
Apple
APPLE
apple
Banana

정렬 출력 (Sort Output)​

체크 해제 시 (기본값)​

원본 순서를 유지합니다 (첫 번째 등장 순서).

입력:
Zebra
Apple
Banana
Apple

출력:
Zebra
Apple
Banana

체크 시​

결과를 알파벳순으로 정렬합니다.

입력:
Zebra
Apple
Banana
Apple

출력:
Apple
Banana
Zebra

통계 정보​

도구는 다음 세 가지 통계를 실시간으로 표시합니다:

  • 전체 라인 (Total Lines): 입력된 총 라인 수
  • 유니크 라인 (Unique Lines): 중복이 제거된 후 남은 라인 수
  • 제거된 라인 (Removed Lines): 제거된 중복 라인 수

실용적인 팁​

1. CSV 파일 처리​

CSV 파일의 특정 열에서 중복을 제거할 때:

  1. 엑셀이나 스프레드시트에서 해당 열을 복사
  2. 이 도구에 붙여넣기
  3. 중복 제거 후 다시 붙여넣기

2. 로그 분석​

서버 로그에서 유니크한 IP 주소나 사용자를 찾을 때 유용합니다.

3. 코드 정리​

Import 문이나 종속성 목록에서 중복을 제거할 때 사용할 수 있습니다.

4. 대량 데이터 처리​

수천 개의 라인도 빠르게 처리할 수 있습니다.

알고리즘 설명​

이 도구는 JavaScript의 Set 자료구조를 사용하여 효율적으로 중복을 제거합니다:

const seen = new Set();
lines.forEach((line) => {
const key = caseSensitive ? line : line.toLowerCase();
if (!seen.has(key)) {
seen.add(key);
uniqueLines.push(line);
}
});

시간 복잡도: O(n) - 매우 효율적입니다!

자주 묻는 질문​

Q: 빈 줄은 어떻게 처리되나요?​

빈 줄도 일반 라인과 동일하게 처리됩니다. 여러 개의 빈 줄이 있으면 하나만 남습니다.

Q: 앞뒤 공백은 중복 판단에 영향을 주나요?​

네. "Apple"과 " Apple "(앞에 공백)은 다른 것으로 취급됩니다. 공백을 제거하려면 공백 제거 도구를 먼저 사용하세요.

Q: 최대 몇 개의 라인을 처리할 수 있나요?​

이론적으로는 제한이 없지만, 브라우저 메모리에 따라 다릅니다. 일반적으로 수만 개의 라인도 문제없이 처리됩니다.

Q: 정렬 옵션은 어떤 방식으로 작동하나요?​

JavaScript의 localeCompare를 사용하여 자연스러운 알파벳 순서로 정렬됩니다. 한글도 가나다순으로 정렬됩니다.

관련 도구​

성능​

  • 처리 속도: 1만 라인을 1초 이내에 처리
  • 메모리 효율: Set 자료구조로 최적화
  • 실시간 처리: 입력 즉시 결과 표시

개인정보 보호​

이 도구는 완전히 클라이언트 측에서 작동합니다. 입력한 데이터는 서버로 전송되지 않으며, 브라우저에서만 처리됩니다.