如何使用python abcd拆分括号[00451.00]

时间:2014-05-05 13:10:40

标签: python

我已尝试过以下代码进行拆分,但我无法拆分

import re
s = "abcd[00451.00]"

print str(s).strip('[]')

我需要输出作为唯一的数字或十进制格式00451.00此值,但我能够输出为abcd [00451.00

3 个答案:

答案 0 :(得分:2)

如果您确定可以使用一个开始和结束括号

s = "abcd[00451.00]"
print s[s.index("[") + 1:s.rindex("]")]
# 00451.00

str.index用于获取字符串中元素[的第一个索引,其中str.rindex用于获取]中元素的最后一个索引。根据这些索引,字符串为sliced

如果要将其转换为浮点数,则可以使用float函数,如下所示

print float(s[s.index("[") + 1:s.rindex("]")])
# 451.0

答案 1 :(得分:0)

您应该使用re.search

import re
s = "abcd[00451.00]"

>>> print re.search(r'\[([^\]]+)\]', s).group(1)
00451.00

答案 2 :(得分:0)

你可以先拆分'['然后去掉任何']'字符的结果列表:

[p.strip(']') for p in s.split('[')]