encoding detection, charset detection 으로 구글링 해보시지요.
도메인으로 쓰셔야 하는 인코딩이 몇개나 되는지는 모르겠지만, 당연히 인코딩을 한정할 수록 좋은 결과를 얻을 수 있겠지요.
feanor님께서 언급하신 것처럼 플레인이 같은 EUC나 ISO기반의 인코딩 따위는 내용을 디코딩해서 최소한 형태소 레벨로 분석해보기 전에는 제대로 된 결과를 얻는 것이 불가능합니다. 그렇기 때문에 확률을 도입하는 것이 아주 당연한 결론입니다. 하지만 표현 영역이 완전히 다른 조합, sjis, gb2312, big5 같은 (주로 아시아권에 적용되는) 특수인코딩에 대해서는 테이블만으로도 꽤 좋은 결과를 얻어낼 수 있습니다.
단지 EUC-KR인지 UTF-8인지 Johab인지 정도만 알아내려면 디코
단지 EUC-KR인지 UTF-8인지 Johab인지 정도만 알아내려면 디코딩을 시도해 보는 방법이 있겠습니다만, EUC-KR과 EUC-CN 같은 것은 가능한 영역이 같아서 쉽게는 안 된다고 알고 있습니다.
제가 찾은 자료중에서는 이런 게 있습니다: 모질라 브라우저에 웹 문서의 인코딩을 자동으로 알아내려고 시도하는 기능이 있지요?
http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html
에서 모질라가 쓰는 방법에 대한 문서를 보실 수 있습니다. 소스는 모질라 CVS에 있구요, 어차피 중요한 것은 알고리즘인데 문서에 자세히 설명되어 있습니다.
1) 우선 디코딩을 시도하고
2) 한 문자 단위로 빈도 검색
3) 두 문자 단위로 빈도 검색
4) 1, 2, 3을 종합
한중일 인코딩에 대한 빈도 자료는 문서에 포함되어 있습니다.
--feanor
encoding detection, charset detection 으로
encoding detection, charset detection 으로 구글링 해보시지요.
도메인으로 쓰셔야 하는 인코딩이 몇개나 되는지는 모르겠지만, 당연히 인코딩을 한정할 수록 좋은 결과를 얻을 수 있겠지요.
feanor님께서 언급하신 것처럼 플레인이 같은 EUC나 ISO기반의 인코딩 따위는 내용을 디코딩해서 최소한 형태소 레벨로 분석해보기 전에는 제대로 된 결과를 얻는 것이 불가능합니다. 그렇기 때문에 확률을 도입하는 것이 아주 당연한 결론입니다. 하지만 표현 영역이 완전히 다른 조합, sjis, gb2312, big5 같은 (주로 아시아권에 적용되는) 특수인코딩에 대해서는 테이블만으로도 꽤 좋은 결과를 얻어낼 수 있습니다.
답변에 대해서 감사 드립니다.그냥 사람눈으로 구변하게 하는 방법이
답변에 대해서 감사 드립니다.
그냥 사람눈으로 구변하게 하는 방법이 제일 좋긴 하지만서두.....
에구... 하면 할 수록 미궁에 빠져드는 느낌이라...
>>>행복한 웃음<<<
댓글 달기