-1
我想將一個字符串拆分爲括號內的幾個部分,但引用的內容(可能包括括號)應被視爲單個符號。例如,串括號內的正則表達式在引號內
(ID1, 「你好簡單」),(ID2, 「你好\ n怪異(所有字符)Ä@」)
應分爲兩個部分
1) ID1, 「你好簡單的」
2)ID2, 「你好\ n怪異(所有字符)Ä@」
我怎樣才能做到這一點在Python?
我想將一個字符串拆分爲括號內的幾個部分,但引用的內容(可能包括括號)應被視爲單個符號。例如,串括號內的正則表達式在引號內
(ID1, 「你好簡單」),(ID2, 「你好\ n怪異(所有字符)Ä@」)
應分爲兩個部分
1) ID1, 「你好簡單的」
2)ID2, 「你好\ n怪異(所有字符)Ä@」
我怎樣才能做到這一點在Python?
如果你確實需要使用regex
,這個工作從您的文章中的當前字符串:
import re
pat = re.compile(r'\(([a-zA-Z0-9"\(\)\s]+)\)')
matches = re.findall(pat, '(Hello "(world)"), (2016)')
# ['Hello "(world)"', '2016']
然而,split
功能也可用於文本格式的可行的選擇。如果所有的數據由一對括號包圍,你可以這樣做:
results = [x[1:-1] for x in '(Hello "(world)"), (2016)'.split(', ')]
# ['Hello "(world)"', '2016']
謝謝。看來我過分簡化了這個問題。你能看看編輯過的問題嗎?基本上,引號內的內容可以是任何符號,包括轉義和unicode。逗號也可以出現在每個拆分部分內。 – Roz
聘請程序員 – stark
查找到Python的拆分[模塊](https://docs.python.org/2/library/stdtypes。 html#str.rsplit) – TheGirrafish