VB.NET方法String.Join(separator, stringArray)
类似于PHP的内聚,但是数组中的任何空元素都被替换为空字符串,因此c:
Dim myArray() as String = { "a", null, "c" }
Console.WriteLine(String.Join(", ", myArray));
// Prints "a, , c"
有没有一种简单的方法可以用忽略空字符串的分隔符连接一组字符串?
我不一定需要使用数组或String.Join或其他任何东西,我只需要以下转换:
("a", "b", "c") --> "a, b, c"
("a", null, "c") --> "a, c"
6条答案
按热度按时间py49o6xq1#
VB.NET
C#
6ss1mwsb2#
You can do it like this in CSharp:
sz81bmfz3#
要在.NET 2.0(无LINQ)中执行此操作,例如,对于SQL-Server ReportingServices,无需为其编写函数:
VB.NET
C#(对于那些从谷歌登陆,而不是搜索VB .NET)
这里假设字符串中没有出现退格键(通常应该是真的,因为不能简单地通过键盘输入这个字符)。
此外,如果您从数据库中获取值,则会更加简单,因为您可以直接在SQL中执行此操作:
PostgreSQL和MySQL:
即使有了出色的MS-SQL-Server,也有可能(PS:这是讽刺):
34gzjxbg4#
请尝试以下操作:
prdp8dxp5#
另一种选择是使用LINQ方便的空过滤器进行过滤:
kulphzqa6#
这适用于VB.NET
Join(*yourArray*.Where(Function(s) Not String.IsNullOrEmpty(s)).ToArray(), *yourDelimiter*)