C# 拆分两个字符串并重新连接
我目前正在为签出过程开发一个地址选择器,它目前有一个函数,可以在签出过程中找到的所有字段后面添加逗号,如下所示 这是使用C# 拆分两个字符串并重新连接,c#,C#,我目前正在为签出过程开发一个地址选择器,它目前有一个函数,可以在签出过程中找到的所有字段后面添加逗号,如下所示 这是使用 ddl.Items.Add(new ListItem(string.Join(", ", lines.ToArray()), address.ID.ToString())); 这是很好的,直到你添加了一个名字,这是一个必须的,这样他们可以使用他们的帐户交付给不同的人在礼物的情况下,或者如果你想订购一些东西,并有其他人签署的产品。我希望我的名字/姓氏之间不要有逗号,但是。。
ddl.Items.Add(new ListItem(string.Join(", ", lines.ToArray()), address.ID.ToString()));
这是很好的,直到你添加了一个名字,这是一个必须的,这样他们可以使用他们的帐户交付给不同的人在礼物的情况下,或者如果你想订购一些东西,并有其他人签署的产品。我希望我的名字/姓氏之间不要有逗号,但是。。。我不能简单地通过不在前两个字段中添加逗号来实现这一点,因为在许多情况下,在交付地址中不会输入名称
这是它当前的显示方式
我在想最好的方法是将名称拆分成一个单独的字符串,然后将地址的其余部分拆分成另一个字符串,在其中添加逗号,然后将字符串重新连接成一个字符串
如果有人能想出更好的方法,请分享您的想法。1您也可以使用
string.Concat(lines.ToArray()).Replace(" ",",");
2或使用foreach和build stringBuilder进行迭代
String = String.Replace(","," ");
或
这将满足您的要求。我使用了这种方法
StringBuilder fullName = new StringBuilder();
List<string> lines = new List<string>();
if (!string.IsNullOrEmpty(address.Name))
fullName.AppendFormat("{0} ", address.Name);
if (!string.IsNullOrEmpty(address.Name1))
fullName.AppendFormat("{0} ", address.Name1);
if (!string.IsNullOrEmpty(address.Name2))
fullName.Append(address.Name2);
if (!string.IsNullOrEmpty(fullName.ToString()))
lines.Add(fullName.ToString());
StringBuilder fullName=new StringBuilder();
列表行=新列表();
如果(!string.IsNullOrEmpty(address.Name))
AppendFormat(“{0}”,address.Name);
如果(!string.IsNullOrEmpty(address.Name1))
AppendFormat(“{0}”,address.Name1);
如果(!string.IsNullOrEmpty(address.Name2))
fullName.Append(address.Name2);
如果(!string.IsNullOrEmpty(fullName.ToString()))
Add(fullName.ToString());
为什么不创建一个FullName
属性,将姓氏附加到第一个名称后再使用它呢?这基本上是我的想法,我只是措辞不好。你试过了吗?似乎它会工作…即将给它一个机会,将更新。有更新,如果你有兴趣。
StringBuilder fullName = new StringBuilder();
List<string> lines = new List<string>();
if (!string.IsNullOrEmpty(address.Name))
fullName.AppendFormat("{0} ", address.Name);
if (!string.IsNullOrEmpty(address.Name1))
fullName.AppendFormat("{0} ", address.Name1);
if (!string.IsNullOrEmpty(address.Name2))
fullName.Append(address.Name2);
if (!string.IsNullOrEmpty(fullName.ToString()))
lines.Add(fullName.ToString());