V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
sundays

python 分句小技巧-大神的日常

  •  
  •   sundays · Apr 20, 2016 · 10646 views
    This topic created in 3671 days ago, the information mentioned may be changed or developed.
    床下睡着一个 IBM 啥奖啥奖的舍友真是有种想舔大腿的冲动,是的,抱大腿已经不能满足我了。
    网上 python 中文分句的脚本一般都是 split 或者建一个分割标点 list ,用 for word in words 的循环来搞,然后大神就给我写了一个,核心就是下面这句
    for s in re.findall(u'.*?[!|,|,|。|...|?|?|!|;|~|~|。|::]+',line+u'::');
    其中
    findall 解决了 split 不保留标点的问题;
    .*?[]+解决了多标点的分割问题,比如“握日!!!”,但是这个正则并没那么简单,大神说这叫贪婪,我这就拿笔记下来;
    line+u'::'解决 用split方法,当文档最后一个不是标点的时候会把最后一句话都删掉的问题;
    当然这个脚本还是不能解决书名号里面有标点时候的分割问题,主要我没问,问了估计就是一句“用正则”回我,哎人家是 1 秒两行有效代码,我是 1 天两行有效代码嘤嘤嘤
    2 replies    2017-06-17 17:31:03 +08:00
    simoncos
        1
    simoncos  
       Oct 3, 2016
    啊真应该抽时间学学正则了
    yucongo
        2
    yucongo  
       Jun 17, 2017
    [...] 的用法貌似有少少问题,不像是大神级写出来的正则,那些"|"不是在[...]里用的东西,或者是你抄错了?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5393 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 08:06 · PVG 16:06 · LAX 01:06 · JFK 04:06
    ♥ Do have faith in what you're doing.