当前位置:   article > 正文

提取文本中的金额,提取货币,Python实现与在线使用_python 如果把文本变成货币

python 如果把文本变成货币

给定一篇文本,提取出文本中涉及到的所有的货币和金额。例如:

'张三赔偿李四人民币车费601,293.11元,工厂费一万二千三百四十五元,利息9佰日元,打印费十块钱。' 

从中提取出 '601,293.11元', '一万二千三百四十五元', '9佰日元', '十块钱' 这样的字符串,并把他们都规范化,形成  '601293.11元', '12345.00元', '900.00日元', '10.00元' 这样的结果。方便存储和计算。

⭐ 源码戳 => JioNLPhttps://github.com/dongrixinyu/JioNLPhttps://github.com/dongrixinyu/JioNLP

⭐ 在线使用戳 => 提取货币金额

安装 Installation

  • python>=3.6 github 版本略领先于 pip
  1. $ git clone https://github.com/dongrixinyu/JioNLP
  2. $ cd ./JioNLP
  3. $ pip install .
  • pip 安装
$ pip install jionlp
  • 可能存在的问题
  1. # 如安装失败,遇到安装时提示的 pkuseg、Microsoft Visual C++、gcc、g++ 等信息,
  2. # 则说明是 pkuseg 安装失败,需要在相应系统中安装 C 和 C++ 编译器,重新安装。
  3. # pip install pkuseg

 使用 Usage

抽取文本中的金额字符串,并提供将其转换为标准数字格式的函数。

  1. >>> import jionlp as jio
  2. >>> text = '张三赔偿李四人民币车费601,293.11元,工厂费一万二千三百四十五元,利息9佰日元,打印费十块钱。'
  3. >>> moneys = jio.extract_money(text)
  4. >>> standard_moneys = [jio.money_standardization(i) for i in moneys]
  5. # moneys: ['601,293.11元', '一万二千三百四十五元', '9佰日元', '十块钱']
  6. # standard_moneys: ['601293.11元', '12345.00元', '900.00日元', '10.00元']
  • 支持标准数字格式,如:1,034,192.07元
  • 支持纯数字格式,如:987273.3美元
  • 支持大写中文金额,如:柒仟六佰零弎萬肆仟叁佰贰拾壹元伍分
  • 支持混合格式,如:1.26万港元
  • 支持口语化中文格式,如:三十五块三毛;但对于“三十五块八”这样的字符串,在文本中存在歧义,如“三十五块八颗糖”等,因此,extract_money 对于此字符串不予抽取,但money_standardization可以将“三十五块八”看作完整的口语化金额,标准化为“35.80元”
  • 支持多种常见货币类型:人民币,港元,澳门元,美元,日元,澳元,韩元,卢布,英镑,马克,法郎,欧元,加元等。

如果觉得好用,就点一下 Star 赞啊!可以直接在 提取货币金额 使用。

JioNLP时间语义解析

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/171877
推荐阅读
相关标签
  

闽ICP备14008679号