re

跟風遠走 提交于 2019-12-02 10:53:22

python中的re库用于正则化,相当于一个过滤器,可以过滤掉不需要的字符,得到自己想要的。

import re
import jieba
rule = re.compile(r"^[\u4e00-\u9fa5]+$")
text='我是卖报的小行家哈哈哈,happy new year!'
words=[]
seg = jieba.posseg.cut(text)
for s in seg:
    if len(s.word)>1 and re.search(rule, s.word) and\
    s.flag in ["a", "v", "x", "n", "an", "vn", "nz", "nt", "nr"]:
        words.append(s.word)
print(words)

  

运行结果是:

['卖报', '行家']

 

其中,\u4e00-\u9fa5表示匹配中文字符,\u4e00是在编码中中文字符开始的值,\u9fa5是中文字符结束的值。

jieba.posseg.cut(text) 可以对段落进行词的划分,划分结果是有两个属性,一个是词word,一个是词性flag。


re.split(r'第.{1,3}章\n', text)[1:]

表示按照章节划分text,其中.{1,3}表示匹配除换行意外的字符1到3次,总的来说可以匹配"第□□□章\n".

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!