[18] [DFN[universalchardet]] は、[[文字]]の出現頻度の統計データを元に[[バイト列]]の[[文字コード]]を判定する手法とその実装です。 * 原典 [REFS[ - [1] [CITE[A composite approach to language/encoding detection]] ([[Shanjian Li]] 著, [TIME[2007-09-08 17:38:48 +09:00]] 版) ]REFS] * 実装 [17] 本家 [[Mozilla]] の [[C++]] の実装の他、各言語への移植版が存在しています。 [REFS[ - [21] [CITE@en-US[mozilla-central: files]] ([TIME[2012-05-26 11:36:03 +09:00]] 版) - [2] [DEL[[CITE[seamonkey/extensions/universalchardet/src/base/]] ([TIME[2007-04-24 00:11:24 +09:00]] 版)]] -[3] [CITE@en[Universal Encoding Detector: character encoding auto-detection in Python]] ([TIME[2007-11-18 20:19:09 +09:00]] 版) -[4] [CITE@ja[Universalchardet - やる気向上作戦]] ([TIME[2009-02-11 14:40:44 +09:00]] 版) -[5] [CITE@ja[RubyForge: Universal Encoding Detector: Project Info]] ([[Bruce Williams (http://codefluency.com), for Ruby Central (http://rubycentral.org)]] 著, [TIME[2009-03-15 11:44:11 +09:00]] 版) -[7] [CITE[自娱自乐的Emacser: 查看 universalchardet 高频字表的 perl 程序]] ([TIME[2009-02-25 12:16:07 +09:00]] 版) -[11] [CITE[juniversalchardet - Java port of universalchardet - Google Project Hosting]] ( ([TIME[2012-05-26 11:25:24 +09:00]] 版)) -[13] [CITE[uchardet - universalchardet - Google Project Hosting]] ( ([TIME[2012-05-26 11:26:23 +09:00]] 版)) -[14] [CITE[nuniversalchardet - C# Port of UniversalCharDet - Google Project Hosting]] ( ([TIME[2012-05-26 11:26:34 +09:00]] 版)) ]REFS] [20] 次に示すのは独立した実装ではなく、他の実装のラッパーとして機能するものです。 [REFS[ -[6] [CITE@en[Whatpm — Perl Modules for Web Hypertext Application Technologies (beta)]] ([TIME[2009-01-12 11:36:16 +09:00]] 版) - [19] [CITE[xyzzy.lisp.universalchardet/site-lisp/uchardet at master · southly/xyzzy.lisp.universalchardet · GitHub]] ([TIME[2012-05-26 11:32:30 +09:00]] 版) ]REFS] * 標準化 [10] UNIVCHARDET 自体は1実装に過ぎず、何らかの標準でも、標準によって義務付けられた実装でもありませんが、 [[Web Applications 1.0]] は[[文字符号化]]の決定算法の中で出現頻度分析に基づく推定の利用を認めており、 その具体例として >>1 を挙げています。 * HTML5 Charset 判定算法で失敗する例 [9] [[HTML documents misinterpreted by charset sniffer]] を参照してください。