我怎样才能抓住括号内的特定字符串

时间:2017-04-15 16:56:43

标签: python

我是python的新手,我怎么能只在[]内抓取特定的字符串,没有其他东西?这是字符串

Opening /root/pact-01.cap    Nan
Name: [8;28TH[KEY FOUND! [ string ][11, type: object

我只想要一个特定的字符串[ string ],如何过滤所有其他内容和[]并获取字符串。

1 个答案:

答案 0 :(得分:3)

您可以使用正则表达式匹配内容。

\[([^[]*)\]

Live Demo

有关正则表达式如何在现场演示中工作的解释。

在Python中它看起来像:

import re

s = """
Opening /root/pact-01.cap    Nan
Name: [8;28TH[KEY FOUND! [ string ][11, type: object
"""

for match in re.finditer(r"\[([^[]*)\]", s):
    print(match.group(1))

那将打印出来:

 string 

要找到一个匹配项,您可以执行以下操作:

match = re.search(r"\[([^[]*)\]", s)
if match:
    print(match.group(1))

如果没有匹配,if语句会告诉match None是否匹配。