C#在X个字母数字值上拆分字符串

时间:2011-10-12 20:23:19

标签: c#

这可能是一个简单的问题我有3个字符串

A123949DADWE2ASDASDW
ASDRWE234DS2334234234
ZXC234ASD43D33SDF23SDF

我想将前8个字符分开,然后分成10和11,然后将它们组合成一个字符串。

所以我会得到:
A123949DWE
ASDRWE23S2
ZXC234AS3D

基本上第9个字符和第12个字符后的任何内容都被删除。

3 个答案:

答案 0 :(得分:7)

您可以使用String.Substring

s = s.Substring(0, 8) + s[10] + s[11]

示例代码:

string[] a = {
                 "A123949DADWE2ASDASDW",
                 "ASDRWE234DS2334234234",
                 "ZXC234ASD43D33SDF23SDF"
             };

a = a.Select(s => s.Substring(0, 8) + s[10] + s[11]).ToArray();

结果:

A123949DWE
ASDRWE23S2
ZXC234AS3D

答案 1 :(得分:0)

因此,假设您将它们声明为字符串变量:

string s1 = "A123949DADWE2ASDASDW";
string s2 = "ASDRWE234DS2334234234";
string s3 = "ZXC234ASD43D33SDF23SDF";

您可以使用子字符串来获得所需内容:

string s1substring = s1.Substring(0,8) + s1.Substring(9,2);
string s2substring = s1.Substring(0,8) + s1.Substring(9,2);
string s3substring = s1.Substring(0,8) + s1.Substring(9,2);

这应该可以满足你的需求。请记住,字符串位置从零开始,因此您必须从起始位置减去一个。

答案 2 :(得分:0)

所以你可以这样做:

string final1 = GetMyString("A123949DADWE2ASDASDW");
string final2 = GetMyString("ASDRWE234DS2334234234");
string final3 = GetMyString("ZXC234ASD43D33SDF23SDF");

public function GetMyString(string Original)
{
    string result = Original.Substring(12);
    result = result.Remove(9, 1);
    return result;
}