假设我们有这个字符串:[18] email@email.com:pwd:
email@email.com
是电子邮件,pwd
是密码。
另外,假设我们有一个值为
的变量f = "[18] email@email.com:pwd:"
我想知道是否有办法生成另外两个名为var1
和var2
的变量,其中var1
变量将从变量{{1}获取确切的电子邮件信息来自f
的确切密码信息和var2
。{/ p>
运行应用程序后的结果应该是:
var2
和
var1 = "email@email.com"
答案 0 :(得分:9)
>>> var1, var2, _ = "[18] email@email.com:pwd:"[5:].split(":")
>>> var1, var2
('email@email.com', 'pwd')
或者如果“[18]”不是固定的前缀:
>>> var1, var2, _ = "[18] email@email.com:pwd:".split("] ")[1].split(":")
>>> var1, var2
('email@email.com', 'pwd')
答案 1 :(得分:7)
import re
var1, var2 = re.findall(r'\s(.*?):(.*):', f)[0]
如果findall()[0]感觉前进了两步,后退了一步:
var1, var2 = re.search(r'\s(.*?):(.*):', f).groups()
答案 2 :(得分:5)
var1, var2 = re.split(r'[ :]', f)[1:3]
答案 3 :(得分:1)
要拆分第一个冒号“:”,您可以执行以下操作:
# keep all after last space
f1= f.rpartition(" ")[2]
var1, _, var2= f1.partition(":")