在Python中的变量中存储字符串中的选定部分

时间:2013-04-21 10:27:31

标签: python python-2.7 python-3.x

我有一个变量Field,其中的字符串存储如下:

Field= "In Field 'fieldname':(Value1) has changed from (1) to (2)"

从存储在变量Field中的这个字符串中,我想在两个不同的变量中捕获值(1)和(2),如:

OldValue=1
NewValue=2

有人可以帮我吗? 我在Python中处理这些变量

1 个答案:

答案 0 :(得分:2)

这会找到括号括起来的数字:

>>> import re
>>> Field= "In Field 'fieldname':(Value1) has changed from (1) to (2)"
>>> OldValue, NewValue = map(int, re.findall(r'\((\d+)\)', Field))
>>> OldValue
1
>>> NewValue
2

您可能不仅有两个值,在这种情况下

vals = list(map(int, re.findall(r'\((\d+)\)', Field)))

会做的伎俩