好的,在 python 中,我从这样的字符串中提取电子邮件:
split = re.split(" ", string)
emails = []
pattern = re.compile("^[a-zA-Z0-9_\.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-\.]+$");
for bit in split:
result = pattern.match(bit)
if(result != None):
emails.append(bit)
只要电子邮件之间有空格,这就是有效的。但情况可能并非总是如此。例如:
Hello, foo@foo.com
会返回:
foo@foo.com
但是,采用以下字符串:
I know my best friend mailto:foo@foo.com!
这将返回null
。所以问题是:我怎样才能使正则表达式成为分割的分隔符?我想得到
foo@foo.com
在所有情况下,无论它旁边的标点符号如何。这在python中可能吗?
“通过正则表达式拆分”是指如果程序遇到字符串中的模式,它将提取该部分并将其放入列表中。