c# - C# Concat 多行字符串
问题描述
我有两个字符串 A 和 B。
string A = @"Hello_
Hello_
Hello_";
string B = @"World
World
World";
我想将这两个字符串与一个可能如下所示的函数调用一起添加:
string AB = ConcatMultilineString(A, B)
该函数应返回:
@"Hello_World
Hello_World
Hello_World"
对我来说最好的方法是将字符串拆分为行数组,然后将所有行与 "\r\n" 一起添加,然后返回它。但这对我来说似乎是不好的做法,因为多行并不总是用“\r\n”表示。
有没有更可靠的方法来做到这一点?
解决方案
对于单行解决方案:
var output = string.Join(System.Environment.NewLine, A.Split('\n')
.Zip(B.Split('\n'), (a,b) => string.Join("", a, b)));
我们分开是\n
因为无论是\n\r
还是只是\n
,它都会包含\n
。剩下的\r
似乎被忽略了,但是如果您觉得更安全,您可以添加对Trim
fora
的调用。b
推荐阅读
- xamarin.android - Xamarin.Android:`Newtonsoft.Json.JsonReaderException`
- java - Protobuf 配置 Intellij Idea Plugin Gradle-kotlin-dsl kotlin
- r - 对同一数据框中的多列执行卡方检验
- php - 尝试通过使用另一个表中的 id 值将两个表连接在一起
- ios - 用户取消了 touchID 实现错误
- c# - wpf 改变视图 mvvm 的有效方法
- angular - 如何在Angular中为对象赋值
- python - scikit-learn 中 TF-IDF 向量的组特征
- javascript - 打印出值后等待 5 秒的 Promise 方法
- amazon-web-services - 具有动态配置的 aws 自动缩放