从tiddlywiki列表传递到python列表

som*_*ier 5 python arrays string python-3.x

Tiddlywiki在内部使用空格分隔的标签来制作标签列表.但它使用[[并]]限制多字标签.也就是说,列表foo,ram doo,bar和very cool成为的TW这样的字符串:

"foo [[ram doo]] bar [[very cool]]"
Run Code Online (Sandbox Code Playgroud)

我怎样才能将其转换为python列表,如下所示:

['foo', 'ram doo', 'bar', 'very cool']
Run Code Online (Sandbox Code Playgroud)

"foo [[ram doo]] bar".split() 对我不起作用..

han*_*ast 8

正则表达式:

import re
a = "foo [[ram doo]] bar [[very cool]] something else"
pattern = re.compile(r'\[\[[^\]]+\]\]|[^\[\] ]+')
print([i.strip(' []') for i in pattern.findall(a)])
Run Code Online (Sandbox Code Playgroud)

打印 ['foo', 'ram doo', 'bar', 'very cool', 'something', 'else']

正则表达式基本上"标记"字符串(边框是[[..]]或按顺序为空格),列表推导然后从标记中删除括号.