我有以下字符串
'abc[123]defgh ijk[456]lm no[78] pq'
我想提取字符串开头和[
之间或空白和[
之间的所有部分。对于给定的字符串,这些是'abc'
,'ijk'
和'no'
部分。
我有以下表达式
exp = re.compile(r'\s(.*?)\[')
但我无法弄清楚如何将字符串的开头添加为可选表达式。我如何编写表达式来涵盖这两种情况?
答案 0 :(得分:6)
答案 1 :(得分:1)
另一个:在找到起始字符后,查找不是[的所有内容,并确保其后跟一个[
(?:^|\s)([^\[]+)(?=\[)