在国内搜索 sphinx 的话找到的资源好像都是挺久远的,无奈之下只好跑到国外去找了。听起来有点不可思议,但是最近整 sphinx 的时候突然想到 mediawiki 官方有 sphinx 的安装介绍,然后就去参考了,惊奇的发现里面有提到  sphinx 支持 CJK 的方法。

CJK 在这边是 Chinese, Japanese, Korean 首字母的缩写。所以如果想要在国外搜索 sphinx 支持中文、日文和韩文的话,建议使用 sphinx 和 CJK 作为关键词。

下面的内容其实总结自 Using Sphinx search engine with Chinese, Japanese, and Korean language documents ,建议英语好的或者有兴趣的人也阅读下原文。

让 sphinx 支持 CJK 的 4 个要素分别是:

1、要建立索引的资料最好是 Unicode(UTF-8) 编码,然后把 sphinx 的 charset_type 设置为 utf-8。

2、设置 CJK 专用的 charset_table ,这部分应该是最重要的。具体操作是访问 sphinx 官方提供的charset_tables 实例。在里面你可以找到 CJK 对应的列表,然后将 sphinx.conf 中 charset_table 的值设置为你复制的内容。需要注意的:内容很多,不能全写在一行里,要分多行记录;记得自行把“→”改为“->”……

3、ngram_chars,依旧是上面那个链接,在最底部有 CJK Ngram Characters ,把内容复制并设定为参数 ngram_chars 的值,注意事项同上。

4、需要把 ngram_len 设置为 1 。

另外,如果你符合了上面的条件还没有成功的话,可以试下:mediawiki 指南中有提到非英语的话记得注释掉 morphology

ivinco.com 在上面的链接给出了支持CJK的配置范例。

让 sphinx 支持中文、日文和韩文的更多相关文章

  1. 关于 FPDF、HTML2PDF里的中文、日文、韩文等双字节字符换行问题

    最近使用 FPDF.HTML2PDF导出中文PDF,发现表格里的数据不会自动换行,格式乱了,看了一下手册,有个 functionCell()可以设置换行,但是设置了半天也没反应!最后搞了一个笨办法完美 ...

  2. js 匹配中文字符串(也包含日文和韩文)

    <script> var str="payTypeNam门诊账户\n\t"; document.write(str.match(/[\u4E00-\u9FA5\uF90 ...

  3. php post get 繁体、日文、韩文时 自动添加 反斜杠 问题

    做些二次开发项目,数据库.文件编码没法大规模的修改,比如二次开发一个日文系统,编码是JA16SJIS,$_POST或$_GET的信息中如果“申請”,得到的信息就会变成“申\請”,多出一个反斜杠! 先贴 ...

  4. Sphinx在windows下安装使用[支持中文全文检索]

    原文地址:http://www.fuchaoqun.com/2008/11/sphinx-on-windows-xp/ 前 一阵子尝试使用了一下Sphinx,一个能够被各种语言(PHP/Python/ ...

  5. c#: Noto Sans字体如何支持韩文

    1.源起: VCU10项目,使用了Noto Sans字体,的确漂亮.但验证在win7下,其显示韩文为乱码,颇为头痛. 其界面显示如图: 度娘之,得Noto Sans又有CJK字体,顾名思义,其为支持中 ...

  6. PHP生成PDF完美支持中文,解决TCPDF乱码

    PHP生成PDF完美支持中文,解决TCPDF乱码 2011-09-26 09:04 418人阅读 评论(0) 收藏 举报 phpfontsheaderttfxhtml文档 PHP生成PDF完美支持中文 ...

  7. [转]Sphinx+Mysql+中文分词安装-实现中文全文搜索

    From : http://blog.csdn.net/lgm252008/article/details/5373436 1.什么是SphinxSphinx 是一个在GPLv2 下发布的一个全文检索 ...

  8. sphinx PDF 中文

    使用reST撰写文档时,需要分多个文档时,就必须使用sphinx了,sphinx说起来很简单的,但是默认是不是支持中文的.幸好我出生的晚,sphinx现在已经支持xelatex了^_^ 安装 除了pa ...

  9. MathType中怎么编辑韩文字符

    用MathType编辑公式,所涉及到符号与字母一般都是英文字母与数字,或者使用希腊字母,当然还有很多使用中文的情况.但是不仅如此,我们在使用MathType时,除了这些字符之外,还可以输入韩文或者日文 ...

随机推荐

  1. iOS开发系列--音频播放、录音、

    音频 在iOS中音频播放从形式上可以分为音效播放和音乐播放.前者主要指的是一些短音频播放,通常作为点缀音频,对于这类音频不需要进行进度.循环等控制.后者指的是一些较长的音频,通常是主音频,对于这些音频 ...

  2. ROS知识(5)----消息与服务的示例

    ROS中已经定义了较多的标准类型的消息,你可以用在这些标准类型的消息上再自定义自己的消息类型.这个在复杂数据传输很有用,例如节点和服务器进行交互时,就可能用到传输多个参数到服务器,并返回相应的结果.为 ...

  3. DiscuzX2.5 程序底层架构

    程序底层架构 • 要求PHP版本大于5.1,抛弃了对PHP4的支持 • 大量使用了面向对象编程(OOP) • 实现了程序运程过程中按需加载,按需加载主要是针对类文件 • 对目录名.文件名和类名的要求 ...

  4. mysql localhost登录和tcp/ip登录 strace

    http://blog.itpub.net/15480802/viewspace-1755100/

  5. iTunes Connect App Video

    系统要求: 系统升级为 OS X Yosemote 版本 10.10 (正式版已经发布更新) 录制工具: QuickTime Player 版本 10.4 (833) 操作流程: 1. 设备数据线连接 ...

  6. Maven之——仓库(下)

    Maven之--仓库(下) 1.    快照版本号 Maven世界中不论什么项目或者构件都有自己的版本号. Maven在构建时检測到构件是快照版本号.而且当前构件不是最新版本号的时候.就会自己主动更新 ...

  7. Flex入门(一)——基本理论

    Flash作为一款美丽动画的产品,是大家所喜爱的,他能够给我们带来更好的视觉效果.可是怎样使其非常快非常好的让Java程序猿,.net程序猿等所接受,并进行相关开发.Macromedia公司在2004 ...

  8. android中共享全局数据的方法

    转自:http://blog.csdn.net/ameyume/article/details/6100756 我们在平时的开发中,有时候可能会需要一些全局数据,来让应用中的所有Activity和Vi ...

  9. Error: Cannot find module 'internal/fs'

    $ sudo n 6.9.1 $ sudo npm -g install npm@next $ sudo n stable curl -0 -L https://npmjs.org/install.s ...

  10. 更改Thunderbird的默认语言

    使用的Thunderbird Poratable版本是英文的,可以用以下方式修改为中文界面: 1.下载中文语言包 在官方网站的https://addons.mozilla.org/en-US/thun ...