【问题标题】:Replace paragraph mark in string替换字符串中的段落标记
【发布时间】:2017-12-20 18:10:17
【问题描述】:

我有一个 html 字符串,我正在尝试替换段落标记。我可以通过选择编辑 > 查找内容:^p > 替换为 ^s > 全部替换,在 word 中手动执行此操作。我的问题是如何在 python 中使用 html 字符串来做到这一点?

sample_html_string = "<html>
                  <title>
                  Hello
                  </title>
                  </html>"

correct_html_string = "<html><title>Hello</title></html>"

这个问题不是简单地使用re.sub 解决的,因为我有一个更复杂的 html 字符串,其中包含li 标记和p 标记,我想在其中保留格式。

【问题讨论】:

  • 您的示例不包含任何看起来像“段落标记”的内容,结果也不包含任何不间断空格。您只是想删除空格吗?

标签: python replace


【解决方案1】:

你可以这样做:

>>> import re
>>> re.sub('\s+', '', sample_html_string)
'<html><title>Hello</title></html>"'

它将替换所有空格字符,并且非常适合您的示例

如果你需要替换段落标记(你的意思是\n,对吗?)你可以使用内置的replace

>>> sample_html_string.replace('\n', '')

【讨论】:

  • 谢谢,您使用 sample_html_string.replace 的第二个建议解决了这个问题
  • 好的,但是你应该了解你在说什么。您说您想用不间断空格 (&amp;nbsp;) 替换段落标记 (&lt;p&gt;),但您正在寻找完全不同的东西。
  • @Matthias:在提到的 Word 上下文中,“段落标记”建议&amp;para;。但我同意不清楚。
猜你喜欢
  • 2011-02-26
  • 2014-12-25
  • 1970-01-01
  • 2012-12-06
  • 2014-10-14
  • 2017-06-03
  • 2011-03-18
  • 2013-12-15
  • 1970-01-01
相关资源
最近更新 更多