如何从 .NET 框架 C# 中的文本框中删除双逗号?
Posted
技术标签:
【中文标题】如何从 .NET 框架 C# 中的文本框中删除双逗号?【英文标题】:How to remove double comma from textbox in .NET framework C#? 【发布时间】:2021-10-08 09:56:36 【问题描述】:我想制作用户可以输入小数的文本框,例如“1、2、3、4”。然后我将其拆分为整数数组使用
array = Array.ConvertAll(str.Split(','), int.Parse);
当用户输入时,例如"1,,,,2,,3,4" 有一个例外。字符串不可变时如何删除逗号?
【问题讨论】:
这能回答你的问题吗? c# split string and remove empty string 【参考方案1】:您不能从现有字符串中删除逗号 - 尽管您可以在拆分之前创建一个 不同的 字符串。这通常是您对字符串处理所做的事情 - 创建整个字符串序列、执行替换、修剪等。
一个更简单的解决方案可能是使用StringSplitOptions.RemoveEmptyEntries
:
string[] parts = str.Split(',', StringSplitOptions.RemoveEmptyEntries);
array = Array.ConvertAll(parts, int.Parse);
(请注意,String.Split(char, StringSplitOptions)
重载在桌面框架中不可用;您需要调用 String.Split(char[], StringSplitOptions)
- 只需在调用代码中将 ','
更改为 new[] ','
。)
您也可以包含StringSplitOptions.TrimEntries
,这样“1, 2 , 3 ,4” 的处理方式将等同于“1,2,3,4”。
这是假设您只是想要处理用户添加比预期更多的逗号。例如,如果用户输入 "1,2,xyz" 将无济于事。
【讨论】:
以上是关于如何从 .NET 框架 C# 中的文本框中删除双逗号?的主要内容,如果未能解决你的问题,请参考以下文章