hanlp中文智能分词自动识别文字提取实例

简介:


需求:客户给销售员自己的个人信息,销售帮助客户下单,此过程需要销售人员手动复制粘贴收获地址,电话,姓名等等,一个智能的分词系统可以让销售人员一键识别以上各种信息

经过调研,找到了一下开源项目

1word 分词器

2ansj 分词器

3mmseg4j 分词器

4ik-analyzer 分词器

5jcseg 分词器

6fudannlp 分词器

7smartcn 分词器

8jieba 分词器

9stanford 分词器

10hanlp 分词器

 

最后选择了hanlp,步骤官网都有,下面演示智能匹配地址

1   List<Term> list = HanLP.newSegment().seg("汤姆江西省南昌市红谷滩新区111号电话12023232323");

2    System.out.println(list);

 

输出

 

1   [汤姆/nrf, 江西省/ns, 南昌市/ns, 红谷滩/nz, 新区/n, 111/m, /q, 电话/n, 12023232323/m]

 

大公告成,不过前提必须下载那个600Mdata包并导入,才可以识别地址,否则只是做了初步的识别

附上完整代码

 

   1     String str = "汤姆   江西省南昌市红谷滩新区111号     12023232323";

   2     String address = "";

   3     String phone = "";

   4     String name = "";

   5     List<Term> terms = NLPTokenizer.segment(str);

   6     System.out.println(terms);

   7     for (Term term : terms) {

   8         if (term.nature.startsWith("nr")){

   9             //nr代表人名

   10             name = term.word;

   11             System.out.println("name: " + term.word);

   12         }else if (term.nature.startsWith("m") && term.word.length() == 11){

   13             //m代表数字

    14            phone = term.word;

    15            System.out.println("电话: " + term.word);

    16        }

    17    }

 

    18    //由于地址包含了数字,解析的时候数字成为单独的个体,与实际不符,所以通过差集求出地址

    19    address = str.replace(phone, "").replace(name, "").trim();

    20    System.out.println("address: " + address);

 

运行结果

 

1    name: 汤姆

2    电话: 12023232323

3    address: 江西省南昌市红谷滩新区111

---------------------


 

相关文章
|
4月前
|
Python
【Python • 图片识别】pytesseract快速识别提取图片中的文字
【Python • 图片识别】pytesseract快速识别提取图片中的文字
237 0
|
数据采集 机器学习/深度学习 自然语言处理
文本处理技能与文本数据清洗、提取、分词与统计
文本处理技能与文本数据清洗、提取、分词与统计
|
机器学习/深度学习 数据采集 存储
【英文文本分类实战】之四——词典提取与词向量提取
【英文文本分类实战】之四——词典提取与词向量提取
222 0
【英文文本分类实战】之四——词典提取与词向量提取
|
文字识别 异构计算 Python
【Python案例】OCR提取图片中的文字
【Python案例】OCR提取图片中的文字
【Python案例】OCR提取图片中的文字
|
API 语音技术 Python
Python语音转文字、音频切割、语音识别
不知道你有没有录过自我介绍的视频,尤其是那种加上PPT播放的长时间视频 可能因为说错一句话就得重来,又或者因为思考而暂停时间太久又得重来,以至于弄了两个小时才做好五分钟的视频
2112 0
Python语音转文字、音频切割、语音识别
|
自然语言处理
NLP:基于snownlp库对文本实现提取文本关键词和文本摘要
NLP:基于snownlp库对文本实现提取文本关键词和文本摘要
NLP:基于snownlp库对文本实现提取文本关键词和文本摘要
|
自然语言处理 Python
Python实现文本分词并写入新的文本文件,然后提取出文本中的关键词
Python实现文本分词并写入新的文本文件,然后提取出文本中的关键词
132 0
|
自然语言处理 机器学习/深度学习 Windows
Hanlp-地名识别调试方法详解
HanLP收词特别是实体比较多,因此特别容易造成误识别。下边举几个地名误识别的例子,需要指出的是,后边的机构名识别也以地名识别为基础,因此,如果地名识别不准确,也会导致机构名识别不准确。
1138 0
|
自然语言处理 机器学习/深度学习 Windows
HanLP-地名识别调试方法
HanLP收词特别是实体比较多,因此特别容易造成误识别。下边举几个地名误识别的例子,需要指出的是,后边的机构名识别也以地名识别为基础,因此,如果地名识别不准确,也会导致机构名识别不准确。 类型1 数字+地名[1] 暗访哈尔滨网约车:下10单来7辆“黑车” 1辆套牌[2] 房天下每日成交5月12日...
1131 0
|
缓存 自然语言处理
Hanlp自然语言处理中的词典格式说明
使用过hanlp的都知道hanlp中有许多词典,它们的格式都是非常相似的,形式都是文本文档,随时可以修改。本篇文章详细介绍了hanlp中的词典格式,以满足用户自定义的需要。
4837 0
下一篇
DDNS