if (!window.dicts) {
|
window.dicts = {}
|
}
|
|
function Segment() {
|
//初始化词库
|
var mappers = {}
|
|
for (key in dicts) {
|
var array = dicts[key];
|
array.map((value, index) => {
|
mappers[value] = key;
|
});
|
}
|
this.getMappers = function () {
|
return mappers;
|
}
|
this.cut = function (sentence) {
|
var start = 0, end = sentence.length - 1, result = [];
|
while (start != end) {
|
var str = [];
|
for (var i = start; i <= end; i++) {
|
var s = sentence.substring(i, i + 1);
|
|
str.push(s);
|
// 如果在字典中,则添加到分词结果集
|
if (str.join('') in mappers) {
|
result.push(str.join(''));
|
}
|
}
|
|
start++;
|
}
|
|
return result;
|
}
|
}
|
|
var segment = new Segment();
|
|
function getIcon(name, icon) {
|
if (!name) {
|
return;
|
}
|
var value = 'far fa-file';
|
if (icon) {
|
//有默认图标的
|
if (icon != value) {
|
return icon;
|
}
|
}
|
|
var results = segment.cut(name);
|
if (results.length != 0) {
|
for (var i = 0; i < results.length; i++) {
|
var map = segment.getMappers()
|
var temp = map[results[i]];
|
if (temp) {
|
value = temp;
|
break;
|
}
|
}
|
}
|
return value;
|
}
|