Python 正则表达式删除分号和句号之间的字符

Python 正则表达式删除分号和句号之间的字符,python,regex,Python,Regex,如何编写正则表达式来删除分号后面的单词,直到它到达第一个句号 例如: try to be nice; underastand people. start fresh. 我想去掉“理解人”这样的词 try to be nice. start fresh 这是我的正则表达式,但遗憾的是它不起作用: sentence = ''.join(re.sub(r';.*?.', '.', sentence)) 谢谢 你忘了逃出点:r';.*?\。'。另外,这里不需要加入任何东西,您将一个字符串传递给re

如何编写正则表达式来删除分号后面的单词,直到它到达第一个句号

例如:

try to be nice; underastand people. start fresh.
我想去掉“理解人”这样的词

try to be nice. start fresh
这是我的正则表达式,但遗憾的是它不起作用:

sentence = ''.join(re.sub(r';.*?.', '.', sentence))

谢谢

你忘了逃出点:
r';.*?\。'。另外,这里不需要加入任何东西,您将一个字符串传递给
re.sub
,然后得到一个字符串

A
r';[^.]+'
regex似乎更好,因为它将匹配
和1+字符,而不是文字点(因此,可以用空字符串替换):


查看

当您使用正则表达式时会得到什么?你怎么知道它不起作用了?你忘了逃走<代码>r';*?\'
import re
sentence = "try to be nice; underastand people. start fresh."
sentence = re.sub(r';[^.]+', '', sentence)
print(sentence)
# => try to be nice. start fresh.