使用regex查找特殊字符时出现问题

2024-05-06 02:39:26 发布

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

我正在使用beautifulsoup和selenium从页面收集一些数据。在把数据缩小到我想要的字符串之后,它给了我“第一滴血”○○○○○●○○○○'. 我的目标是确定填充点的位置(如果我们从0开始计数,在本例中为5)

我首先尝试使用以下方法删除所有非特殊字符:

test = re.sub(r'[a-z]+', '', collectStatistics[5], re.I)

给了我F B○○○○○●○○○○' 所以我猜fb也是特殊的角色。我不知道如何去写一个正则表达式,将检测到填充的圆圈,所以任何建议将不胜感激

提前感谢:)


Tags: 数据方法字符串testre目标fbselenium
2条回答

它会找到FB,因为您的正则表达式会找到小写字母。如果您想找到所有小写字母,请将正则表达式改为[a-zA-Z]+

import re
collectStatistics = "First Blood○○○○○●○○○○"
test = re.sub(r'[a-zA-Z]+', '', collectStatistics,re.I)
print (test)

输出:

 ○○○○○●○○○○

我认为regex(regices?在这里太过分了

首先,切掉填充点后的所有内容:

line = line.split('●')[0] # Split on filled dots, then take only the first part

现在,数一数空点:

result = line.count('○') # Count occurrences

相关问题 更多 >