字符串列出python中的转换?

EMM*_*EMM 7 python regex

我有一个字符串:

searchString = "u:sads asdas asdsad n:sadasda as:adds sdasd dasd a:sed eee"
Run Code Online (Sandbox Code Playgroud)

我想要的是列表:

["u:sads asdas asdsad","n:sadasda","as:adds sdasd dasd","a:sed eee"]
Run Code Online (Sandbox Code Playgroud)

我所做的是:

values = re.split('\s', searchString)
mylist = []
word = ''
for elem in values:
  if ':' in elem:
    if word:
      mylist.append(word)
    word = elem
  else:
    word = word + ' ' + elem
list.append(word)
return mylist
Run Code Online (Sandbox Code Playgroud)

但我想在python 2.6中使用优化代码.

谢谢

Dor*_*mer 13

使用正则表达式:

import re
mylist= re.split('\s+(?=\w+:)', searchString)
Run Code Online (Sandbox Code Playgroud)

这会将字符串分割到一个空格,后跟一个或多个字母和冒号.前瞻((?=部分)使其在保留\w+:部件的同时在空白上分开