我正在寻找一种方法来根据我的正则表达式计算字符串中出现的次数。我使用findall(),它返回一个列表,但列表的len()只有1?列表的len()不应该是2吗?
import re
string1 = r'Total $200.00 Total $900.00'
regex = r'(.*Total.*|.*Invoice.*|.*Amount.*)?(\s+?\$\s?[1-9]{1,10}.*(?:
[.,]\d{3})*(?:[.,]\d{2})?)'
patt = re.findall(regex,string1)
print(patt)
print(len(patt))
Run Code Online (Sandbox Code Playgroud)
结果:
> [('Total $200.00 Total', ' $900.00')]
> 1
Run Code Online (Sandbox Code Playgroud)
不确定我的正则表达式是否导致它计算错误。我希望从文件中获取总计,但有很多组合。例子:
ETC。
我想计算这一点,因为一个文件中可能有多个发票详细信息。
通过使用正则表达式函数寻求帮助,该函数查找以5开头且长度为7位数字的字符串。
这是我到目前为止根据搜索得出的结果,但不起作用:
import re
string = "234324, 5604020, 45309, 45, 55, 5102903"
re.findall(r'^5[0-9]\d{5}', string)
Run Code Online (Sandbox Code Playgroud)
不知道我在想什么。
谢谢