假设我有 4 个字符串,我想在它们之间添加一个 OR 运算符:
Dim s1="db = 45 AND frec = 500 "
Dim s2="db = 25 AND frec = 1 "
Dim s3="db = 5 AND frec = 2 "
Dim s4="db = 15 AND frec = 4 "
所以
Dim result = "db = 45 AND frec = 500 OR db = 25 AND frec = 1 OR db = 5 AND frec = 2 OR db = 15 AND frec = 4"
连接字符串会很简单
Dim result= s1 & " OR " & s2 & " OR " & s3 & " OR " & s4
但一般来说,任何字符串都可以为空或为 null 所以如果我连接空字符串,我会得到 p>
例如s2 = ""
Dim result = "db = 45 AND frec = 500 OR OR db = 5 AND frec = 2 OR db = 15 AND frec = 4"
这是不正确的,我想替换像“OR OR”这样的字符串
Dim result = result.Replace("OR OR", "")
有更好的方法吗?一个快速的解决方案是对所有情况进行硬编码,但我猜这不是很好
(我不能改变这个设计,因为字符串被用在其他几个东西上)
最佳答案
在 C# 中:
string.Join(" OR ", new[] { stringA, stringB }
.Where(s => !string.IsNullOrEmpty(s)));
请注意,这也适用于更大的阵列。如果您使用的是 .NET <4.0
,请添加.ToArray()
关于vb.net - 如果字符串不为 null 或为空,则在字符串之间添加字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18322080/