给定一个 python 形式的字符串:
(a*p+b)/p**2
总是遵循这种格式,例如 (3.02*p+4.12)/p**2 我想提取 a 和 b,在示例中是 3.02 和 4.12
请您参考如下方法:
您可以使用str.split 和str.strip:
>>> s = '(3.02+4.12*p)/p**2'
>>> s.strip('(').split('*')[0].split('+')
['3.02', '4.12']
更新:
如果模式变得太复杂,您可以使用正则表达式:
>>> s = '(3.02*p+4.12)/p**2'
>>> re.findall(r'(\d+\.\d+)\*p\+(\d+.\d+)', s)[0]
('3.02', '4.12')
