Python:使用的编码问题re.sub公司

2024-10-04 09:18:32 发布

您现在位置:Python中文网/ 问答频道 /正文

实际上,我正在用以下代码测试html文件中的一些替换:

text = re.sub(u'<div class="paragraph" style="[^"]+"><span class="font61"><i>Test. </i>55<span class="font16"></span><span style=" letter-spacing:-0.70pt;"> </span></span></div>', u'<div class="paragraph" style="\1"><span class="font61"><i>Test.</i><span class="font16"></span><span style=" letter-spacing:-0.70pt;">55</span></span></div>', text)

不幸的是,我的输出是:

^{pr2}$

我收到的不是"style=" padding:6.00pt 63.36pt 0.00pt 43.68pt; text-align:justify;"",而是一个特殊字符,它也不能在这里显示。我怎样才能解决这个问题?在

换句话说: 如果我有这样的东西:

<div class="paragraph" style=" padding:0.00pt 0.00pt 0.00pt 90.24pt; text-align:left;"><span class="font61"><i>Test </i>55<span class="font16"></span><span style=" letter-spacing:-0.70pt;"> </span></span></div>

(重要的是:<;/i>;+number+<;span class=),我想将数字移到最后一个间距(此处,在<;/span>;之前)。 我该怎么做?在


Tags: texttestltdivptstyleclassspan
1条回答
网友
1楼 · 发布于 2024-10-04 09:18:32

re.sub()正在做被告知的事情。在

假设您在问题中正确输入了替换字符串,“特殊字符”"\x01"位于替换字符串中(第二个参数是re.sub()):

u'<div class="paragraph" style="\x01">.........'

尝试将替换字符串更改为:

^{pr2}$

但是,最好使用BeautifulSoup这样的库来帮助您解析和处理HTML,而不是使用正则表达式。在

相关问题 更多 >