在Python中查找字符串中的多个元素

M4I3X

我的问题是我需要在一个字符串中找到多个元素。

例如,我得到了一个看起来像这样的字符串:

line = if ((var.equals("INPUT")) || (var.equals("OUTPUT"))

然后我得到了这段代码来查找'(“'和'”)'之间的所有内容

char1 = '("'
char2 = '")'


add = line[line.find(char1)+2 : line.find(char2)]
list.append(add)

当前结果是:

['INPUT']

但我需要结果看起来像这样:

['INPUT','OUTPUT', ...]

在获得第一个匹配项之后,它停止了搜索其他匹配项,但是我需要在该字符串中查找与此搜索匹配的所有内容。

我还需要将每个匹配项附加到列表中。

塞缪尔·吉法德

最简单的:

>>> import re
>>> s = """line = if ((var.equals("INPUT")) || (var.equals("OUTPUT"))"""
>>> r = re.compile(r'\("(.*?)"\)')
>>> r.findall(s)
['INPUT', 'OUTPUT']

诀窍是使用.*?非贪婪的东西*

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章