正确的Regex-Syntax for Python中的re.sub替换

Pas*_*rat 3 python regex

我正在寻找正确的正则表达式来替换Python中的这样的东西:

old_string包含:

some text
some text
<!-V
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat
V->
some text
Run Code Online (Sandbox Code Playgroud)

我试图更换<!-V *** V->部件:

import re
new_string = re.sub(r"<!-V(.*?)V->", '', old_string)
Run Code Online (Sandbox Code Playgroud)

但似乎不正确,也许任何人都可以帮助我正确的正则表达式.

use*_*ica 7

默认情况下,.与换行符不匹配.如果你想.匹配那些,请使用DOTALL标志:

new_string = re.sub(r"<!-V(.*?)V->", '', old_string, flags=re.DOTALL)
Run Code Online (Sandbox Code Playgroud)

.通过组合两个互补的字符类,还可以选择替换匹配所有内容的字符类:

[\s\S]
Run Code Online (Sandbox Code Playgroud)