我有以下形式雙引號字符串蟒蛇
'"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
我需要梳理出雙引號中的子串的字符串,因此「08770」和「tykjkj」。
我應該怎麼做在python中?
我有以下形式雙引號字符串蟒蛇
'"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
我需要梳理出雙引號中的子串的字符串,因此「08770」和「tykjkj」。
我應該怎麼做在python中?
如果你想使用正則表達式:
>>> import re
>>> re.findall(r'""(.*?)""', '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"')
['O8770', 'tykjkj']
這個問題很容易適用於簡單的字符串方法。 – TigerhawkT3 2015-04-03 20:59:20
這可能是,但這是實際給出OP要求的唯一答案。 – Ben 2015-04-03 21:01:16
我同意,我喜歡答案本! – 2015-04-03 21:02:17
這可以從命令行解釋器中運行。
s = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
s.split('\"')
。
result:
['', 'asfdfdfds', '', 'O8770', '', 'asdsadjieere', '', 'tykjkj', '', 'ldkflskfd', '']
你不需要逃生,你應該分裂在2個雙引號 - 's.split('「'')' – MattDMo 2015-04-03 20:49:50
mystring = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
mystring.strip('"').split('""')
你能解釋你的答案嗎? – Zulu 2015-04-04 00:13:23
它需要字符串,刪除前導和尾部雙引號,然後創建一個列表,其中列出了由雙引號分隔的左側。 – TigerhawkT3 2015-04-04 05:38:21
使用string.split功能與參數「給你的子
'"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'.split('"')
結果:
['', 'asfdfdfds', '', 'O8770', '', 'asdsadjieere', '', 'tykjkj', '', 'ldkflskfd', '']
vals = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'.split('\"')
print [val for val in vals if val]
你可以用'if val'替換'if val!='''。 – TigerhawkT3 2015-04-03 20:51:47
是的,可以做到。 – 2015-04-03 20:53:21
很明顯,從很多答案中,有很多方法可以做到這一點。訣竅是將初始字符串「清理」或「映射」爲可以容易分離的內容,例如通過字符串split()
方法。
>>> s = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
>>> s.replace('"', '\t').split()
['asfdfdfds', 'O8770', 'asdsadjieere', 'tykjkj', 'ldkflskfd']
的選擇如何原來的字符串映射爲依賴於什麼樣的字符串你可能會得到。他們都會有平衡的報價?他們可能包含什麼樣的空白或其他字符?真實世界的數據如何變得很髒/與您的基本解析假設不一致?因爲任何可以嘗試解析/拆分字符串的方法都取決於的一些假設。
初始字符串並不一定需要清理 - 'split()'可以分割不僅僅是空白。 – TigerhawkT3 2015-04-03 20:58:15
@ TigerhawkT3是的'split()'是相當通用的。但是考慮一下:你的答案在調用split('「'')'之前使用'strip(''')'。'strip'調用?你正在清理初始字符串,然後可以方便地拆分它。 QED。 – 2015-04-03 21:00:54
你可以使用正則表達式
import re
string = '"asfdfdfds""O8770""asdsadjieere""tykjkj""ldkflskfd"'
print re.findall('".+?"', string)
爲什麼不 'asdsadjieere'? – 2015-04-03 20:50:19
從答案來看,這個問題大約15%清楚了需要什麼。 – TigerhawkT3 2015-04-03 21:11:03
對不起,我以爲我是「嘲笑」是我提到的。 – 2015-04-03 21:14:42