2015-11-20 110 views
0

我需要从记录中给出的多个ID中提取电子邮件ID。我正在开发一种工具,通过使用C#将数据存储到sql服务器并使用某种逻辑来检索它。逻辑之一是从多个邮件ID中提取期望的(@gmail.com提到的)电子邮件ID作为记录。从多个电子邮件ID中提取所需的电子邮件ID

例子,我需要提取[email protected]定记录:

ID:123

名称:ABC
电子邮件ID:[email protected] [email protected]

电子邮件ID由空格分隔。

+2

我想明显的解决办法不是在一个字段中存储多个值。但是,如果你*必须*然后你可以使用'string.Split()'这样的东西来分隔你的代码中的值,然后选择你想要的。 – David

+0

[在String.Split操作中指定空白的最佳方式]的可能重复(http://stackoverflow.com/questions/6111298/best-way-to-specify-whitespace-in-a-string-split-operation) – kayess

+0

@大卫我希望string.Split()将解决我的问题,但如果这些不是一样的顺序像一条记录那么有一个邮件编号gmail.com首先来,并为其他记录yahoo.com先来。它可能是奥得。无论位置如何,我只需要提取gmail.com。 – gvk

回答

0

说这些是属于同一用户两封电子邮件:(SICE我不知道什么是您的具体情况)你是多少最好取出用户标识并将电子邮件存储到单独的表中,并将两个条目的用户标识放入另一个字段中。然后,你可以做select * from email where email_user_id = users.user_id

如果你已经有那么创建的表不幸的是,你需要使用yourString.split(' ')分割空间,但比它的结束其他的电子邮件任意地点的单一空间,是要打破一切。