我正在抓取一个HTML结构非常糟糕的网站,我正在收到这样的文字
示例:
Creator:
\r\r
My Name
\r\r
Date created:
\r\r
123123
<br><br>
Title:
\r\r
Title here
\r\r
我希望它看起来像
Creator: My Name
\r\r
Date created:123123
Title:Title here
\r\r
我有这个正则表达式_str = re.sub('\r+','',_str)
但我知道它错了,因为它取代了所有\r
有没有办法迭代re.sub()
?或者你有任何想法我如何实现我的目标?
答案 0 :(得分:3)
你应该尝试更换:
:
\r\r
:
答案 1 :(得分:2)
您可以仅将for $x in library/book
where $x/about = "Programming"
return data (library/author[@ID=$x/author/@ref])
模式+下一组(包括下一个\r\r
模式)替换为第二部分。
\r\r
(我希望通过正向查找来实现,但在这里 使用以下模式)
答案 2 :(得分:1)
它必须是正则表达式吗?
s1 = 'Creator:\r\rMy Name\r\rDate created:\r\r123123<br><br>Title:\r\rTitle here\r\r'
s2 = ''.join(l + '\r\r' * (n % 3 == 1) for n, l in enumerate(s1.split('\r\r')))
// s2 == 'Creator:My Name\r\rDate created:123123<br><br>Title:Title here\r\r'