node 、字符串转xml_推荐一款前端汉字转拼音组件工具

推荐一个前端的汉字转拼音组件 hotoo/pinyin, 支持在 Node 和 Web 浏览器环境运行。

github网址:https://github.com/hotoo/pinyin

d104abca8126f6fef863fd277c120e0f.png

特性

  • 根据词组智能匹配最正确的拼音。
  • 支持多音字。
  • 简单的繁体支持。
  • 支持多种不同拼音风格。

使用步骤

安装依赖

npm install pinyin

新建一个pinyin.js

var pinyin = require("pinyin");console.log(pinyin("中心"));    // [ [ 'zhōng' ], [ 'xīn' ] ]console.log(pinyin("中心", {  heteronym: true               // 启用多音字模式}));                            // [ [ 'zhōng', 'zhòng' ], [ 'xīn' ] ]console.log(pinyin("中心", {  heteronym: true,              // 启用多音字模式  segment: true                 // 启用分词,以解决多音字问题。}));                            // [ [ 'zhōng' ], [ 'xīn' ] ]console.log(pinyin("我喜欢你", {  segment: true,                // 启用分词  group: true                   // 启用词组}));                            // [ [ 'wǒ' ], [ 'xǐhuān' ], [ 'nǐ' ] ]console.log(pinyin("中心", {  style: pinyin.STYLE_INITIALS, // 设置拼音风格  heteronym: true}));                            // [ [ 'zh' ], [ 'x' ] ]

通过pinyin方法,传入汉字和配置参数返回拼音二维数组。配置参数可以传入拼音风格、多音字模式(返回汉字的所有拼音)、分词模式(性能慢)。

拼音风格有以下几种:

pinyin.STYLE_NORMAL         //不带声调,如:pin yinpinyin.STYLE_TONE               //默认启用,声调风格,如:pīn yīnpinyin.STYLE_FIRST_LETTER  //首字母风格,只返回拼音的首字母部分,如:p ypinyin.STYLE_INITIALS          //声母风格,只返回各个拼音的声母部分。对于没有声母的汉字,返回空白字符串,如:中国的拼音 zh gpinyin.STYLE_TONE2             //声调风格 2,即拼音声调以数字形式在各个拼音之后,用数字 [0-4] 进行表示.如:pin1 yin1pinyin.STYLE_TO3NE             //声调风格 3,即拼音声调以数字形式在注音字符之后,用数字 [0-4] 进行表示。如:pi1n yi1n

运行示例js

运行js前需要你本地安装Node.js环境,执行命令

node pinyin.js
ca1ae0e739328483f5373f04c7866df1.png

node pinyin.js

返回的是汉字的拼音二维数组

如果你想对汉字进行拼音排序,可以调用compare方法对两组汉字排序。

Number pinyin.compare(a, b)

a汉字大于b汉字时返回 1

a汉字小于b汉字时返回-1

a汉字等于b汉字时返回0

示例如下:

console.log(pinyin.compare('中心','中国'));    //1console.log(pinyin.compare('朋克','朋友'));    //-1console.log(pinyin.compare('你好','你好'));    //0console.log(pinyin.compare('你好','你好啊'));  //-1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值