以动态方式在字符串中删除和添加逗号

Posted

技术标签:

【中文标题】以动态方式在字符串中删除和添加逗号【英文标题】:Remove and Add comma in String at Dynamic way 【发布时间】:2021-04-15 03:56:38 【问题描述】:

我有用逗号分隔的地址,例如地址 1、地址 2、城市、国家/地区,如果在运行时任何值为空或 null,我需要删除逗号。

【问题讨论】:

帮助我们帮助您 - 分享一些示例输入和您想要获得的输出。 那么到目前为止,您自己尝试过什么?你遇到了什么问题?你研究了什么? 我已经尝试过 linq ,用逗号分割方法,替换方法,但对我没有用地址存储在列表中,如 [address line 1, address line 2, zipcode, city, country] ,问题是我不知道运行时什么值是空的 如果城市为空我想获取值然后我想要这个输出地址 = [addressline1, addressline2, zipcode, country] 【参考方案1】:

基本方法,但我认为如果你搜索你会做得更好

string mee = "address1,,city,country";
        string[] arr = mee.Split(',');
        string final = string.Empty;
        for (int i = 0; i < arr.Length; i++)
                        
            if (string.IsNullOrEmpty(arr[i]))
                continue;

            final += i == 0 ? arr[i] : $",arr[i]";

        

或者也许使用 System.Linq(但您必须测试所有可能性)

            string final = String.Join(",", mee.Split(',').Where((x) => !string.IsNullOrEmpty(x)));

【讨论】:

以上是关于以动态方式在字符串中删除和添加逗号的主要内容,如果未能解决你的问题,请参考以下文章

如何使用javascript从字符串末尾删除多个逗号?

php 如果字符串以逗号','结尾,请删除逗号

拼接字符串时,去掉最后一个多余的逗号

SQL Server:如何将float格式化为字符串,不使用逗号?

从字符串中删除非数字字符(不包括句点和逗号)(即删除除数字、逗号和句点之外的所有字符)

PL/SQL 动态插入