【问题标题】:How do I isolate the text between 2 delimiters on the left and 7 delimiters on the right in Python?如何在 Python 中隔离左侧 2 个分隔符和右侧 7 个分隔符之间的文本?
【发布时间】:2015-06-22 20:23:25
【问题描述】:

我有一个字符串:

string = ""7807161604","Sat Jan 16 00:00:57 +0000 2010","Global focus begins tonight. Pretty interested to hear more about it.","Madison Alabama","al","17428434","81","51","Sun Nov 16 21:46:24 +0000 2008","243"

我只想要文本:“全球焦点今晚开始。很想听听更多关于它的信息。”“,它位于第 2 和第 3 个逗号/分隔符之间。 如果我使用:

i = string.split(',', 2)
s = i[2]
j = s.split(',',-7)
print j[0]

我会得到想要的输出。 但是,如果原始字符串之间有一个额外的逗号,如下所示:

string = ""7807161604","Sat Jan 16 00:00:57 +0000 2010","Global focus begins tonight. Pretty interested, to hear more about it.","Madison Alabama","al","17428434","81","51","Sun Nov 16 21:46:24 +0000 2008","243""

然后这种方法不起作用,因为我需要的输出正在被拆分。如果我出错了,任何人都可以帮忙并提出不同的方法或建议吗?谢谢!

【问题讨论】:

  • 这是一个元组还是一个字符串?
  • 对不起,这是一个完整的字符串,而不是一个元组。

标签: python regex string split


【解决方案1】:

你可以使用python内置的csv模块来做到这一点。

j = next(csv.reader([string]));

现在j 是由, 分隔的每个项目,如果值包含在" 中,则将包括逗号。见j[2]

【讨论】: