목록과 텍스트 비교
두 목록을 줄 단위로 비교합니다. 둘 다에 있거나, 하나에만 있거나, 어느 쪽에든 있는 줄을 찾고, 표시된 줄 차이를 나란히 볼 수 있습니다.
코드 예제
내 프로젝트에 그대로 복사해서 쓰세요. 모든 예제는 해당 언어의 표준 라이브러리만 사용하므로 설치할 것이 없습니다.
const a = ['a', 'b', 'c', 'b']
const b = ['b', 'd']
const exclude = new Set(b)
console.log([...new Set(a)].filter((line) => !exclude.has(line)).join('\n'))기능
두 목록을 줄 단위로 비교합니다. 집합으로: 모든 줄 한 번씩(합집합), 두 목록 모두에 있는 줄(교집합), A에만 또는 B에만 있는 줄, 정확히 한쪽에만 있는 줄. 텍스트로: 각 줄을 변경 없음, 삭제됨, 추가됨으로 표시하는 줄 차이를 통합 또는 나란히 보기로 보여 줍니다.
사용 방법
- 목록 A와 목록 B에 한 줄에 한 항목씩 입력하거나 붙여넣으세요. 텍스트 파일은 목록 A에 놓을 수 있습니다.
- 연산을 고르세요. ‘더보기’에서 대소문자 구분을 끄면
Apple과apple이 같게 취급되고, 줄 앞뒤 공백 무시를 켜면 끝의 공백 때문에 줄이 달라지지 않습니다. 결과에는 입력한 그대로의 줄이 남습니다. - 결과를 복사하거나 다운로드하세요. 빈 줄 제거는 먼저 두 목록의 빈 줄을 없앱니다.
예시
목록 A가 a, b, c, d, 목록 B가 b, c일 때:
A − B는 a와 d를, A ∩ B는 b와 c를 주고, 줄 차이는 a와 d를 A에서 삭제된 것으로 표시합니다.
알아두기
- 집합 연산은 줄의 순서를 무시하고 각 줄을 처음 나타난 순서대로 한 번씩 줍니다.
- 줄 차이는 목록을 위에서 아래로 비교하므로 옮겨진 줄은 한 곳에서는 삭제로, 다른 곳에서는 추가로 표시됩니다.
- 나란히 보기에서는 바뀐 줄이 한 행을 공유하고, 짝이 없는 줄은 한쪽이 비어 있습니다.
- 무시하도록 고른 부분에서만 다른 줄은 같은 것으로 간주되며 목록 B의 형태로 표시됩니다.
연산은 무슨 뜻인가요?
A ∪ B는 어느 한쪽 목록에 있는 모든 줄을 한 번씩 나열합니다. A ∩ B는 둘 다에 있는 줄을 남깁니다. A − B는 A에만 있는 줄, B − A는 B에만 있는 줄을 남깁니다. 마지막 연산은 정확히 한 목록에만 있는 줄을 남깁니다. 모든 결과는 중복이 없고 처음 나타난 순서를 유지합니다.
자주 묻는 질문
집합 연산과 줄 차이는 어떻게 다른가요?
집합 연산은 목록을 컬렉션으로 비교하므로 줄의 순서는 상관없습니다. 줄 차이는 위에서 아래로 텍스트로 비교하여 코드 리뷰처럼 각 줄을 변경 없음, 삭제됨, 추가됨으로 표시합니다.
대소문자와 공백을 무시할 수 있나요?
네. ‘더보기’에서 대소문자 구분을 끄고 줄 앞뒤 공백 무시를 켜세요. 그 점에서만 다른 줄은 같은 것으로 간주되며 결과에는 입력한 그대로 남습니다.
이 도구가 내 목록을 어딘가로 보내나요?
아니요. 모든 작업은 브라우저에서 이루어집니다. 입력한 내용은 저희 서버로 전송되지 않습니다.