我有一个用于输入多个电子邮件地址的文本区域。我发送了邮件ID,如下图所示。我收到了从文本区域到字符串的值,我就像“a@a.com \ r \ n \ r \ n@ac.om \ r \ n \ r \ n \ n \ n \ n \ n \ n \ n \ n \ n \ r \ n \ n \ n \ n nk@k.com“
我需要将此数据以逗号分隔的电子邮件ID保存到表中。 例如: a @ a.com ,, a @ a.com,b @ b.com,k @ k.com
我明白了 如何从字符串中删除不需要的换行符和空格。
答案 0 :(得分:3)
您可以使用string.Join()将逗号分隔的电子邮件列表连接在一起,电子邮件列表由LINQ生成。
var emails = @"a@a.com\r\n\r\na@ac.om\r\n\r\nb@b.com\r\n k@k.com";
var result = string.Join(",", emails
.Split(new char[] { '\r', '\n' }, StringSplitOptions.None)
.Where(x => !string.IsNullOrEmpty(x))
.Select(x => x.Trim()));
结果输出:
一个@ a.com,一个@ ac.om,B @ b.com,K @ k.com
答案 1 :(得分:2)
尝试使用{em> Linq 的Split
和Join
:
string source = "a@a.com\r\n\r\na@ac.om\r\n\r\nb@b.com\r\n k@k.com";
// a@a.com,a@ac.om,b@b.com,k@k.com
string result = string.Join(",", source
.Split(new char[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)
.Select(line => line.Trim()));