/** * Created by Alex on 2016/3/7. */ var hzpy = require("./hanziPinyin").hzpy; var hzpyWithOutYin = require("./hanziPinyinWithoutYin").hzpy; var _ = require("lodash"); function pinyin(word,splitStr) { splitStr = splitStr === undefined ? ' ' : splitStr; var str = ''; var s; for (var i = 0; i < word.length; i++) { if (hzpy.indexOf(word.charAt(i)) != -1 && word.charCodeAt(i) > 200) { s = 1; while (hzpy.charAt(hzpy.indexOf(word.charAt(i)) + s) != ",") { str += hzpy.charAt(hzpy.indexOf(word.charAt(i)) + s); s++; } str += splitStr; } else { str += word.charAt(i); } } return str; } //无声调的拼音 function pinyinWithOutYin(word,splitStr) { splitStr = splitStr === undefined ? ' ' : splitStr; var str = ''; var s; for (var i = 0; i < word.length; i++) { if (hzpyWithOutYin.indexOf(word.charAt(i)) != -1 && word.charCodeAt(i) > 200) { s = 1; while (hzpyWithOutYin.charAt(hzpyWithOutYin.indexOf(word.charAt(i)) + s) != ",") { str += hzpyWithOutYin.charAt(hzpyWithOutYin.indexOf(word.charAt(i)) + s); s++; } str +=splitStr; } else { str += word.charAt(i); } } return str; } function isChineseWord(word, modle) { if (!modle) { //modle为false是非严格中文!默认是严格中文 modle = true; } var str = ''; var isChinese = false; for (var i = 0; i < word.length; i++) { if (hzpy.indexOf(word.charAt(i)) != -1 && word.charCodeAt(i) > 200) { isChinese = true; } else { if (modle) { return false; } } } return isChinese; } function sort(array, key) { return _.sortBy(array, [function (o) { return pinyinWithOutYin(o[key],""); }]); } module.exports = { pinyin: pinyin, pinyinWithOutYin: pinyinWithOutYin, isChineseWord: isChineseWord, sort: sort }