Python中正则表达式的含义

时间:2018-12-21 02:34:35

标签: python-3.x

我有一些代码,不知道它们的含义。请为我解释一下:

s = re.sub(r"([.!?])", r" \1", s)
s = re.sub(r"[^a-zA-Z.!?]+", r" ", s)
s = re.sub(r"\s+", r" ", s).strip()

1 个答案:

答案 0 :(得分:0)

  1. 匹配每个'。','!','?'在s中,然后在其前面添加''。
  2. 匹配s中所有非字母(上下)或'。'的字符。 '!' '?'并将其替换为''。
  3. 匹配s中的每个空白字符。因此,这包括空格,制表符,换行符,垂直制表符等。将其替换为'',并去除(即删除)空白字符(例如'')。考虑到strip首先应该已经处理了要替换的空白,所以这似乎是多余的,因此,这应该等同于首先剥离s。