• Python进行文本处理


    对于一个文本字符串,可以使用Python的string.split()方法将其切割。下面看看实际运行效果。

    mySent = 'This book is the best book on python!'
    print mySent.split()

    输出:

    ['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python!']

    可以看到,切分的效果不错,但是标点符号也被当成了词,可以使用正则表达式来处理,其中分隔符是除单词、数字外的任意字符串。

    import re
    reg = re.compile('\W*')
    mySent = 'This book is the best book on python!'
    listof = reg.split(mySent)
    print listof

    输出为:

    ['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python', '']

    现在得到了一系列词组成的词表,但是里面的空字符串需要去掉。

    可以计算每个字符串的长度,只返回大于0的字符串。

    import re
    reg = re.compile('\W*')
    mySent = 'This book is the best book on python!'
    listof = reg.split(mySent)
    new_list = [tok for tok in listof if len(tok)>0]
    print new_list

    输出为:

    ['This', 'book', 'is', 'the', 'best', 'book', 'on', 'python']

    最后,发现句子中的第一个字母是大写的。我们需要同一形式,把大写转化为小写。Python内嵌的方法,可以将字符串全部转化为小写(.lower())或大写(.upper())

    import re
    reg = re.compile('\W*')
    mySent = 'This book is the best book on python!'
    listof = reg.split(mySent)
    new_list = [tok.lower() for tok in listof if len(tok)>0]
    print new_list

    输出为:

    ['this', 'book', 'is', 'the', 'best', 'book', 'on', 'python']

    下面来看一封完整的电子邮件:

    内容

    Hi Peter,

    With Jose out of town, do you want to
    meet once in a while to keep things
    going and do some interesting stuff?

    Let me know
    Eugene

    import re
    reg = re.compile('\W*')
    email = open('email.txt').read()
    list = reg.split(email)
    new_txt = [tok.lower() for tok in list if len(tok)>0]
    print new_txt

    输出:

    ['hi', 'peter', 'with', 'jose', 'out', 'of', 'town', 'do', 'you', 'want', 'to', 'meet', 'once', 'in', 'a', 'while', 'to', 'keep', 'things', 'going', 'and', 'do', 'some', 'interesting', 'stuff', 'let', 'me', 'know', 'eugene']
  • 相关阅读:
    Spark内核
    Scala(十一)泛型、项目案例
    离线数仓(一)
    SparkSparkCore(二)
    SharePoint 2013 Preview相关软件及必备组件下载地址
    SharePoint 2010 文档库AllItems.aspx页面出现乱码,打开即提示下载
    [SharePoint 2010]System.IO.FileLoadException: 找到的程序集清单定义与程序集引用不匹配
    '添加解决方案'这一部署步骤中发生错误:"未能提取解决方案中的 cab 文件"
    SharePoint 2010 BackupSPSite 备份网站集时报错 异常来自 HRESULT:0x80131904
    JSON介绍
  • 原文地址:https://www.cnblogs.com/lovephysics/p/7238479.html
Copyright © 2020-2023  润新知