首页 > 解决方案 > 如何在 2 个字符串中获取一个字符串?

问题描述

所以我有3个变量。

char_in = "("
char_out = ")"
string = "[(0, 0, 255), (250, 250), 50]"

如何获取 char_in 和 char_out 中每个字符串的列表。像["0, 0, 255", "250, 250"]

标签: pythonstring

解决方案


您可以使用re模块:

In [1294]: re.findall('\('+ char_in +'.*?' + char_out+ '\)',string)
Out[1294]: ['0, 0, 255', '250, 250']

你可以有这样的功能:

In [1309]: def get_in_between(char_in, string, char_out):
      ...:     return re.findall(re.escape(char_in)+'(.*?)'+re.escape(char_out), string)
      ...: 

In [1310]: get_in_between('(','[(0, 0, 255), (250, 250), 50]', ')')
Out[1310]: ['0, 0, 255', '250, 250']

让我知道这是否有帮助。


推荐阅读