【问题标题】:C# transpose one comma separated string over anotherC# 将一个逗号分隔的字符串转置到另一个上
【发布时间】:2019-11-24 15:02:49
【问题描述】:

我想将值从一个逗号分隔的字符串转置为另一个逗号分隔的字符串。

示例 1

Input 1 : 1,19,2,20,3,30
Input 2 : ,,{0},{1},,

Output  : ,,2,20,,

示例 2

Input 1 : 1,19,2,20,3,30
Input 2 : ,,,,{0},{1}

Output  : ,,,,3,30

两个输入字符串的开头都有一些其他值。因此,如果从最后计算位置的任何逻辑对我有利。

我实际上有一个字符串列表,其中包含类似于输入 2 值的模式。然后需要将输入 1 的值转置为所有具有类似输入 2 的模式的字符串。

谢谢, 罗汉。

【问题讨论】:

  • 对不起,我没有得到你想要达到的目标。输入 2 的含义是什么?为什么会有牙套? 0和1是什么意思?
  • @user287107 :谢谢 - 但我已经得到了 Cetin Basoz 的解决方案

标签: c# linq lambda


【解决方案1】:

你可以这样做:

void Main()
{
    Console.WriteLine(
    TransformCustom("1,19,2,20,3,30",",,{ 0},{ 1},,")
    );

//Output: ,,2,20,,
Console.WriteLine(
TransformCustom("1,19,2,20,3,30",",,,,{ 0},{ 1}")
);

//Output: ,,,,3,30
}

private string TransformCustom(string input1, string input2)
{
    return string.Join(",",
    input1.Split(',').Zip(input2.Split(','), (i1, i2) => new {i1, i2})
        .Select(i => string.IsNullOrEmpty(i.i2)?"":i.i1));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-10
    • 2011-11-20
    • 1970-01-01
    • 2012-05-19
    • 1970-01-01
    相关资源
    最近更新 更多