gpt4 book ai didi

Python正则表达式在div之间替换

转载 作者:行者123 更新时间:2023-11-28 17:11:01 25 4
gpt4 key购买 nike

我正在尝试替换 div class="one"标签之间的所有文本到目前为止,我所拥有的是有效的,但前提是一切都在一条线上。
text_msg 是

text = re.sub('<div class="one">.*?</div>',new_text,text_msg,re.DOTALL)

<div class="one">replace this
more text here
another line
</div>

我试过 re.MULTILINE,没有成功。我做错了什么?

最佳答案

我去修改了你的re.sub .当前代码的问题是您没有使用 flags用于指定标志的关键字参数。我还更改了您的正则表达式以寻找前体模式 (?<=<div class="one">)和 Release模式(?=<\/div>) .

import re

text_msg = """
<html>
<head>
<title>Terrible webpage</title>
</head>
<body>

<div class="one">Cool text!</div>
<b>test</b>
<div class="one">Second text!</div>
<div class="one">third text!</div>
<div class="one">replace this
more text here
another line
</div>

</body>
</html>
"""

print(re.sub('(?<=<div class="one">).*?(?=<\/div>)',"out",text_msg,flags=re.DOTALL))

输出:

<html>
<head>
<title>Terrible webpage</title>
</head>
<body>

<div class="one">out</div>
<b>test</b>
<div class="one">out</div>
<div class="one">out</div>
<div class="one">out</div>

</body>
</html>

关于Python正则表达式在div之间替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47425374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com