## xici(关键词分组)
----
多功能分词工具:
1. 按词数(关键词长度)分组,相同字数的词分到一组。
2. 按是否包含数字分组, 包含数字的关键词分到一组。
3. 按是否包含字母分组, 包含字母的关键词分到一组。
4. 按是否包含特殊符号分组,包含特殊符号的关键词分到一组。
5. 按核心词汇分组。
6. 按核心词汇的组合分组,组合长度不限。例如:`Java
+费用`,组合间用 `'+'`连接。
7. 支持核心词组合分组时的匹配模式控制,即:
* `"包含"` 模式:只要关键词包含所有的核心词便分到该组下(不论核心词位置的先后)。
* `"相同"` 模式: 只有包含核心词并且排列结果相同时才分到该组下(核心词的先后位置一致)。
8. 支持将符合核心词、核心词组合的关键词进一步按照关键词的长度进一步细分分组。
9. 支持先删除符合条件的关键词,然后再分组。
>提示:
>
>删除关键词的规则的写法与分组规则一致,核心词、核心词组合、包含数字、包含字母、包含特殊符号。删除规则中不支持长度规则);
>
>字母、数字、特殊符号因某些原因可能存在遗漏——匹配不上导致关键词中依然存在包含这些特殊内容的关键词。
### 准备文件
#### 关键词文件
* 关键词文件须是 `.txt` 类型文件。
* 内容:一行一个关键词。
##### 分词规则文件
* 规则文件为 `.csv ` 类型文件。
* 具体标题(表头)见《分词模板》*运行 rankman template 获得*
### 规则列填写说明
#### "保留" 规则
* `&s` —— 包含数字;可匹配包含数字的关键词。
* `&z` —— 包含字母;可匹配包含英文字母的关键词。
* `&f` —— 包含符号;可匹配包含特殊符号的关键词。
* `&c` —— 按关键词长度(词数)分组,长度相同的关键词分到一组。
* 指定长度分组;写具体的数字,比如: `10`,则所有长度为10(10个字)的关键词分到该组下。
* 范围长度分组;写两个数字并用 "`_`" 连起来;如:`5_10`,则所有长度大于或等于5,小于或等于10 范围内的关键词将分到该组下。
* 核心字符(词组)—— 按包含核心字符进行分组。
* 核心字符(词组)组合 —— 按包含或者结构与核心字符组合相同进行分组。它有两种分配规则:
1. 全部包含核心字符;
2. 与核心字符组合的结构相同(占位的顺序一致)
#### "删除"规则
“删除”的规则与 “保留” 规则基本一致,但涉及关键词**长度**的规则不可用。
#### isPullAfterDone
在分词时,是否不断地将已经分出去的词移除。
* 填 "是" 或者 "否"
结果:
* "是", 在所有的分组中每个关键词都是唯一的。
* "否", 在不同的分组中可能存在相同的关键词。
#### isGroupByLength
作用在核心字符(词组) 规则上。是否对已分好组的关键词再次按长度进行按长度细分。
* 填 "是" 或者 "否"
结果: 如果“是”,则对已分好组的关键词再次按长度进行按长度细分,按长度归类并输出文件名为 核心字符+长度+模式.txt 的文本文件。
#### findMod
作用在核心字符组合(词组) 规则上。
* 填 “相同” 或者 “包含”
说明:
* "包含", 当关键词包含 全部 核心字符 时,将关键词分到该组下。
* "相同", 当关键词的结构 与 核心字符组合 一致时,将关键词分到该组下。