Python 正则表达式在特定位置查找数字

Python 正则表达式在特定位置查找数字,python,regex,Python,Regex,嗨,我有一根这样的绳子 track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false; 我想使用一些正则表达式,这样我就可以得到组 pid = 1234 p1 = 21 p2 = 4343 重新导入 s=“track._Event('product','test');product.lisen(1234,21,4343);返回false 模式=重新编译(r.*lisen\(?P\d+)\s*(?P\d+

嗨,我有一根这样的绳子

track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;
我想使用一些正则表达式,这样我就可以得到组

pid = 1234
p1 = 21
p2 = 4343
重新导入
s=“track._Event('product','test');product.lisen(1234,21,4343);返回false
模式=重新编译(r.*lisen\(?P\d+)\s*(?P\d+)\s*(?P\d+)*)
pid,p1,p2=map(int,pattern.match.groups())

注意:我使用了命名捕获组,但在这种情况下这不是必需的。

为什么使用正则表达式?您可以通过简单的字符串操作来完成

>>> s="track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;"
>>> s.split("lisen(")[-1].split(")")[0].split(",")
['1234', ' 21', ' 4343']
>>> s="track._Event('product', 'test');Product.lisen(1234, 21, 4343); return false;"
>>> s.split("lisen(")[-1].split(")")[0].split(",")
['1234', ' 21', ' 4343']