官方文档

# 移除句子标点符号
import re
import string
from zhon.hanzi import punctuation

text = "I have - a dream . ?"
re.sub(r"[%s]+|[%s]+" % (punctuation, string.punctuation), "", text)
# output: "I have  a dream  " 需要处理连续空格


# 英文连在一起的句子拆开
def pre_tokenize(eng):
    def callback_repl(matchobj):
        return matchobj.group(1) + '. ' + matchobj.group(2)
    # 匹配 "I have a dream.We have" 为 dream. We
    # 注意. 后的匹配需要大写字母和小写字母同时拥有
    # 如果是 "have dream.I" 这样则不能匹配成功
    return re.sub('( [a-z0-9 ]{2,})\.([A-Z][a-z])', callback_repl, eng)
  

  
# 匹配一些特殊符号
question = re.compile(r'\?{3,}')   # ''三次及三次以上?
bad_mrk = re.compile(r'[¶©↓]')
re.search(bad_mrk, line)

# 替换句子中多个空格 为 1个空格
re.sub(r'\s{2,}', ' ', sentence)
End

本文标题:常用正则 python re

本文链接:http://tzer.top/archives/236.html

除非另有说明,本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

声明:转载请注明文章来源。

最后修改:2021 年 12 月 29 日
如果觉得我的文章对你有用,请随意赞赏