V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
czhfrank
V2EX  ›  Python

有没有现成的拼音分词工具?

  •  
  •   czhfrank · 2019-07-03 02:21:34 +08:00 via iPhone · 3750 次点击
    这是一个创建于 1752 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如一段英文字符 jintiantianqibucuo 可以拆分为 jin tian tian qi bu cuo。如果不符合拼音规则则返回输入非拼音的提示

    如果有现成的就最好了,省的重写一个
    7 条回复    2019-07-03 21:13:31 +08:00
    yuikns
        1
    yuikns  
       2019-07-03 06:28:55 +08:00
    我还以为是中文分词呢,刚想推荐一下 IKAnalyzer... 这个枚举不是超简单么?

    我过了一遍所有 utf-8 中文字符然后用 pinyin4j 帮你枚举了一下 XD

    https://gist.github.com/yuikns/387be5e9cf450ae3589fa7037c94453e#file-pinyin_tokenlizer-py
    yuikns
        2
    yuikns  
       2019-07-03 06:30:35 +08:00
    输入是 jintianxtianqibucuo 其中 tian[x]tian 有问题,所以输出 ['jin', 'tian', 'invalid:x', 'tian', 'qi', 'bu', 'cuo']。
    不玩啦
    czhfrank
        3
    czhfrank  
    OP
       2019-07-03 07:03:32 +08:00 via iPhone
    @yuikns 谢谢老哥,我回去看下。主要就是怕自己拼音规则写的不完整
    gladuo
        4
    gladuo  
       2019-07-03 11:42:20 +08:00
    @yuikns 不过还有一些 badcase 还是蛮难的其实,比如 xianshi (西安市)是 xi'an'shi 还是 xian'shi ;或者 xuanzhuan (旋转)是 xuan'zhuan 还是 xu'an'zhuan ;以 声母 分隔,是硬边界,但是还有一些软边界是 韵母 分隔,简化的话。。。就是列个高频词表匹配一下,通用的话是不是还得整个 language model 什么的,没再仔细想了
    yuikns
        5
    yuikns  
       2019-07-03 11:55:42 +08:00 via iPad
    @gladuo 对。常见问题是 xian 到底是西安还是鲜凭借没有分割的拼音乱猜也没用。

    要死只是算个人 possibility 那简单,手头有几个 g 微博语料做个 ngram 很容易,不过确定性就不可知了
    yuikns
        6
    yuikns  
       2019-07-03 11:59:47 +08:00 via iPad
    @gladuo 倒是陕西的拼音 Shaanxi,这种需要额外 knowledge 的比较烦不能一步搞定
    czhfrank
        7
    czhfrank  
    OP
       2019-07-03 21:13:31 +08:00 via iPhone
    @yuikns 已经很好了,shaanxi 严格来说确实不是拼音,是英文名了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1169 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 18:18 · PVG 02:18 · LAX 11:18 · JFK 14:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.