为了账号安全,请及时绑定邮箱和手机立即绑定

Python split()而不删除定界符

Python split()而不删除定界符

白衣非少年 2019-10-12 10:26:09
这段代码几乎可以满足我的需求。for line in all_lines:    s = line.split('>')除了删除所有的'>'分隔符。所以,<html><head>变成['<html','<head']有没有一种方法可以使用split()方法但保留定界符而不是删除定界符?有了这些结果。['<html>','<head>']
查看完整描述

3 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

d = ">"

for line in all_lines:

    s =  [e+d for e in line.split(d) if e]


查看完整回答
反对 回复 2019-10-12
?
潇湘沐

TA贡献1816条经验 获得超6个赞

如果要使用拆分来解析HTML,则极有可能做错了,除非您编写的是针对固定和安全内容文件的单发脚本。如果应该在任何HTML输入上使用它,您将如何处理<a title='growth > 8%' href='#something'>?


无论如何,以下对我有用:


>>> import re

>>> re.split('(<[^>]*>)', '<body><table><tr><td>')[1::2]

['<body>', '<table>', '<tr>', '<td>']


查看完整回答
反对 回复 2019-10-12
  • 3 回答
  • 0 关注
  • 898 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信