C# 如何在C中拆分两个字符串并交换切片部分?

C# 如何在C中拆分两个字符串并交换切片部分?,c#,string,split,C#,String,Split,我有一个数组,每个索引包含一个包含四个字符的字符串。我需要在字符串中选择一个随机点,然后在同一点切片stringaArray[0]和stringaArray[1],交换它们的切片部分,并将它们添加到拼接StringArray[0]和拼接StringArray[1] 我知道如何在C中使用split,我也一直在尝试,但它只会将字符串分割成字符,而不会分割成部分。我问这个问题是因为我的思维方式是创建许多变量来保存临时字符串,然后将它们添加到拼接字符串数组[] 下面是我最近的一次尝试,试图找到字符串的开

我有一个数组,每个索引包含一个包含四个字符的字符串。我需要在字符串中选择一个随机点,然后在同一点切片stringaArray[0]和stringaArray[1],交换它们的切片部分,并将它们添加到拼接StringArray[0]和拼接StringArray[1]

我知道如何在C中使用split,我也一直在尝试,但它只会将字符串分割成字符,而不会分割成部分。我问这个问题是因为我的思维方式是创建许多变量来保存临时字符串,然后将它们添加到拼接字符串数组[]

下面是我最近的一次尝试,试图找到字符串的开头、中间和结尾,并希望复制我想要的任何变量以生成新字符串,然后将它们存储在第二个数组中:

            string s = stringaArray[0];
            char[] charArray = s.ToCharArray();

            int amount = charArray.Length;

            int findMiddle = amount / 2 + 1;

            int midchar = findMiddle - 1;
            int findLast = amount - 1;


            char fchar = charArray[0];
            char mchar = charArray[midchar];
            char lchar = charArray[findLast];

我也在看C中的字符串生成器类,想知道那里是否有我可以使用的东西,但我想我会花很多时间在这方面,并开发最差的解决方案,因此任何关于如何执行此操作的建议都将不胜感激。

要在确切位置拆分,请使用。这样你就可以从某个点和某个点分开。最简单的解决方案与此类似:

var offset = 1;
splicedStringArray[0] = stringArray[0].Substring(0, offset) + stringArray[1].Substring(offset);
splicedStringArray[1] = stringArray[1].Substring(0, offset) + stringArray[0].Substring(offset);

免责声明:代码是未经测试编写的。

您能提供您尝试过的代码吗?您能发布一个交换和切片的示例吗?我从今天早上就开始编辑此代码,请允许我回溯并获取此代码,然后我会通过它,谢谢@TimSchmelter你可能是在挖苦人,但万一你不是,他的意思是问:出于某种原因,我不再有切片部分了。我从这里得到了切片帮助谢谢我会试试看的!: