C# 从多个电子邮件ID中提取所需的电子邮件ID

C# 从多个电子邮件ID中提取所需的电子邮件ID,c#,C#,我需要从记录中提供的多个id中提取电子邮件id。我正在开发一个工具,使用C将数据存储到sql server中,并使用一些逻辑检索数据。其中一个逻辑是从多个邮件id中提取所需的@gmail.com提到的电子邮件id以用于记录 例如,我需要提取xxx@gmail.com给定记录: 身份证号码:123 姓名:abc 电子邮件id:xxx@gmail.com xxx@yahoo.com 电子邮件id用空格分隔。假设您已经将电子邮件列表与所有其他数据分隔开,请使用string.splitnull拆分包含所

我需要从记录中提供的多个id中提取电子邮件id。我正在开发一个工具,使用C将数据存储到sql server中,并使用一些逻辑检索数据。其中一个逻辑是从多个邮件id中提取所需的@gmail.com提到的电子邮件id以用于记录

例如,我需要提取xxx@gmail.com给定记录:

身份证号码:123

姓名:abc 电子邮件id:xxx@gmail.com xxx@yahoo.com


电子邮件id用空格分隔。

假设您已经将电子邮件列表与所有其他数据分隔开,请使用string.splitnull拆分包含所有空白电子邮件的字符串。如果需要更多选项,可以在此处找到string.split的文档:


假设这两封电子邮件属于同一个用户:Sice我不知道您的具体情况您最好将用户ID和电子邮件存储到单独的表中,并将两个条目的用户ID输入另一个字段。然后您只需从电子邮件中选择*,其中email\u user\u id=users.user\u id


如果您已经创建了表,那么很遗憾,您需要使用字符串.split“”在空间上进行拆分,但是电子邮件中除结尾以外的任何地方的单个空间都会破坏一切。

我想最明显的解决方案是首先不要在一个字段中存储多个值。但是如果你必须这样做,那么你可以使用string.Split之类的东西来分离代码中的这些值,然后选择你想要的值。可能重复的@David i hope string.Split可以解决我的问题,但是如果这些值的顺序不同,比如一条记录的顺序是邮件id gmail.com先出现,而另一条记录的顺序是yahoo.com首先,不管是什么顺序。我只需要提取gmail.com而不考虑位置。@gvk:然后在分割值之后,找到与您要查找的条件匹配的值。结果枚举上的Where筛选器应执行此操作。这里真正的要点是您应该修复数据。在一列中存储多个值是愚蠢的。