【发布时间】:2018-01-14 15:45:28
【问题描述】:
我正在寻找一种方法来生成带有任何随机字符串列表和预期输出字符串的拆分算法。预期的输出字符串每次都会有一个“:”分隔符。
import re
to_split = """
'email = "foo@mail.com, info = "lalsdfaslsad"))'
'email = "bar@mail.com, info = "lasdfl1241aslsad"))'
'email = "foooo@3robosa.com, info = "lalsdfsdfas241lsad"))'
'email = "foooodf@sdfrobosa.com, info = "ladsfsdflas241lsad"))'
'email = "foooo@dsdfrobosa.com, info = "lalas241lsad"))'
'email = "foooo@ferobosa.com, info = "lalas241lsad"))'
'email = "foooo@rodbosa.com, info = "lalas241lsad"))'
'email = "foooo@rodsfa.com, info = "laldsfsdfas241lsad"))'
""".splitlines()
def split_it(s, e):
ms = 10
for line in s:
for item in e.split(':'):
if line.find(item) != -1:
l_chars = re.escape(line[line.rfind(item) - ms:line.rfind(item)])
r_chars = re.escape(line[line.rfind(item) + len(item):line.rfind(item) + len(item) + ms])
if l_chars and r_chars:
for line2 in s:
regex = r'{}(.+?){}'.format(l_chars, r_chars)
if re.search(regex, line2):
print re.search(regex, line2).group(1)
expected_output = 'foo@mail.com:lalsdfaslsad'
split_it(to_split, expected_output)
电流输出:
foo@mail.com
bar@mail.com
foooo@3robosa.com
foooodf@sdfrobosa.com
foooo@dsdfrobosa.com
foooo@ferobosa.com
foooo@rodbosa.com
foooo@rodsfa.com
lalsdfaslsad
lasdfl1241aslsad
lalsdfsdfas241lsad
ladsfsdflas241lsad
lalas241lsad
lalas241lsad
lalas241lsad
laldsfsdfas241lsad
预期输出:
foo@mail.com:lalsdfaslsad
bar@mail.com:lasdfl1241aslsad
foooo@3robosa.com:lalsdfsdfas241lsad
foooodf@sdfrobosa.com:ladsfsdflas241lsad
...
提前谢谢大家
【问题讨论】:
-
您是否尝试将每封电子邮件与其“信息”连接起来??
-
为什么字符串中有 3 " - 那是不平衡的 - 我的眼睛 huuuuuurt
标签: python