Python——正则表达式


将文本分行

  • text.split("\n")
    • 适用于普通文本,这种文本的特点是写到文件或者print输出后看不到\n字符串,自动转义成换行符,显示出来就是分行的
  • text.split("\\n")
    • 适用于被编码后的文本,该文本的特点是经过编码,所以写到文件或者输出时还能看到\n字符串,本质上需要二次转义才能显示为换行符号
  • text.split(r"\n")
    • 同上,等价与告诉别人不需要转义r"\n"本身代表着"\n"是原始文本,无需转义,体现在分
  • text.decode("unicode-escape").split("\n")
    • 效果同上
  • 第一种文本是一次转义就能按行显示的文本,比如一次print和write操作都会转义
  • 后三种文本需要两次转义才能按行显示,中间两种分割方式等价,最后一种是先转义再分割

正则表达式匹配完整字符串

  • 必须使用^和$, 否则部分匹配也会返回结果
    1
    2
    3
    4
    5
    import re
    def totally_match(pattern, string):
    if re.match(pattern, string) is not None:
    return True
    totally_match(r"^cat$", "cat")