使用re
庫這應該是一項非常簡單的任務。但是,我似乎無法將我的字符串拆分爲分號]
和[
。在列表中沒有分隔符的多個分隔符處分割
我已經閱讀Splitting a string with multiple delimiters in Python,Python: Split string with multiple delimiters和Python: How to get multiple elements inside square brackets。
我的字符串:
data = "This is a string spanning over multiple lines.
At somepoint there will be square brackets.
[like this]
And then maybe some more text.
[And another text in square brackets]"
它應該返回:
['This is a string spanning over multiple lines.\nAt somepoint there will be square brackets.','like this', 'And then maybe some more text.', 'And another text in square brackets']
簡單例子嘗試:
data2 = 'A new string. [with brackets] another line [and a bracket]'
我想:
re.split(r'(\[|\])', data2)
re.split(r'([|])', data2)
但這些要麼導致其在我的結果列表中的分隔符或錯誤列表乾脆:前
['A new string.', 'with brackets', 'another line', 'and a bracket']
作爲一個特殊的要求,所有的換行字符和空格:
['A new string. ', '[', 'with brackets', ']', ' another line ', '[', 'and a bracket', ']', '']
結果應該是並且在分隔符應該被移除並且不被包括在列表中。
是的,這比我推薦的非捕獲組更簡單。 –
工程很好。就像一個補充:我如何刪除元素結尾/開始處的所有換行符和空格? – cherrun
好的。弄清楚了。在列表中的每個元素上使用'strip()'。再次感謝。 – cherrun