C#按字母顺序将字符串值更改为下一个值

时间:2011-06-18 12:39:45

标签: c#

所以这就是我想要做的。我有一个字符串alphaCode,我只想做的是从字母A增加到字母B.我做了一种方法,为每个字母分配一个int然后做int ++,但我假设必须有一个更好的方法。

string alphaCode = "a"

result = "b"

4 个答案:

答案 0 :(得分:4)

string GetNextCode(string alphaCode)
{
    Debug.Assert(alphaCode.Length == 1 && Regex.IsMatch(alphaCode, "[a-yA-y]"));

    var next = (char) (alphaCode[0] + 1);
    return next.ToString();
}

断言只是为了传达意图 - 即我确实理解了你的要求。它甚至有点多余。

答案 1 :(得分:3)

如果你使用char类型,你可以这样做:

char alphaChar = 'a';
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);
Console.WriteLine(alphaChar++);

答案 2 :(得分:1)

怎么样,

String sample = "a";
String next = ((char)(sample[0] + 1)).ToString();

将字符串的第一个字符转换为下一个字符。

答案 3 :(得分:0)

实现这一点的最好方法是使用ASCII代码,为实现这一点,您可以简单地将每个字符转换为int,您可以使用以下代码

 string st = "a";
 char c = st[0];
 int x = (int)c;
 x = x + 1;
 c = Convert.ToChar(x);