Node.js 汉字转拼音

Posted by wxianfeng Fri, 30 Aug 2013 17:06:00 GMT

之前写了一个 ruby 汉字转拼音的 gem , 项目需要, 把它翻译成了 nodejs module.

安装

npm install hanzi_to_pinyin

使用

var hanzi_to_pinyin = require("hanzi_to_pinyin");
hanzi_to_pinyin.hanzi_to_pinyin("测试");

命令行bin

>hanzi_to_pinyin "测试"
=>ce;shi

例子

assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("ab你好c"),'ab;ni;hao;c');
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("我们"),"wo;men");
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("yyf"),"yyf");
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("拗Smith"),"ao,niu;Smith");
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("测试1"),"ce;shi;1");
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("测_试-"),"ce;_;shi;-");
assert.equal(hanzi_to_pinyin.hanzi_to_pinyin("2"),"2");

源码

nodejs

ruby


ruby 汉字转拼音

Posted by wxianfeng Tue, 20 Nov 2012 04:30:00 GMT

很久以前从项目中抽取出来的 汉字转拼音的 gem, 今天介绍下使用方法.

功能

  • 首字母支持
  • 全拼支持
  • 多音字支持
  • 其它字符默认输出

Gemfile:

gem 'hanzi_to_pinyin', '0.8.0', require: 'hanzi_to_pinyin'

使用demo

$ HanziToPinyin.hanzi_to_pinyin("喜欢Ruby") => "xhruby"
$ HanziToPinyin.hanzi_2_pinyin("喜欢Ruby") => "xhruby"

$ HanziToPinyin.is_hanzi?("") => true
$ HanziToPinyin.is_hanzi?("a") => false

# 多音字,分隔 字字之间;分隔,字母丢弃
$ HanziToPinyin.hanzi_2_py("我们") => "wo;men"
$ HanziToPinyin.hanzi_2_py("查理Smith") => "cha,zha;li"
$ HanziToPinyin.hanzi_2_py("测试1") => "ce;shi;1"
$ HanziToPinyin.hanzi_2_py("测_试") => "ce;_;shi"
$ HanziToPinyin.hanzi_2_py("测-试") => "ce;-;shi"
$ HanziToPinyin.hanzi_2_py(2) =>  "2"

$ HanziToPinyin.is_number?("1".ord) => true
$ HanziToPinyin.is_number?("a".ord) => false

$ HanziToPinyin.is_underline?("_".ord) => true
$ HanziToPinyin.is_underline?("豆豆") => false
$ HanziToPinyin.is_dash?("-".ord) => true

更多介绍可以看 github 主页

HERE

另外也被翻译成了 nodejs module

nodejs