双引号字符串python

时间:2015-04-03 20:46:30

标签: python string

我有一个以下形式的字符串

'"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'

我需要用双引号梳理子字符串,所以'08770'和'tykjkj'。

我应该如何在python中完成?

7 个答案:

答案 0 :(得分:2)

如果你想使用正则表达式:

>>> import re
>>> re.findall(r'""(.*?)""', '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"')
['O8770', 'tykjkj']

答案 1 :(得分:2)

很明显,从许多答案来看,有很多方法可以做到这一点。诀窍是将初始字符串“清理”或“映射”为易于分离的内容,例如通过字符串split()方法。

>>> s = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
>>> s.replace('"', '\t').split()
['asfdfdfds', 'O8770', 'asdsadjieere', 'tykjkj', 'ldkflskfd']

选择如何映射原始字符串取决于您可能获得的字符串类型。他们都会有均衡的报价吗?它们包括什么样的空白或其他字符?现实世界的数据如何与您的基本解析假设相比较脏/不一致?因为可以尝试解析/拆分字符串的每种方式都取决于一些假设。

答案 2 :(得分:0)

这适用于命令行解释器。

s = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
s.split('\"')

result:
['', 'asfdfdfds', '', 'O8770', '', 'asdsadjieere', '', 'tykjkj', '', 'ldkflskfd', '']

答案 3 :(得分:0)

mystring = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
mystring.strip('"').split('""')

答案 4 :(得分:0)

使用带参数&#34的string.split函数;给你子串。

'"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'.split('"')

结果:

['', 'asfdfdfds', '', 'O8770', '', 'asdsadjieere', '', 'tykjkj', '', 'ldkflskfd', '']

答案 5 :(得分:0)

vals = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'.split('\"')
print [val for val in vals if val]

答案 6 :(得分:0)

您可以使用正则表达式

import re
string = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
print re.findall('".+?"', string)