Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to find out next character alphabetically?

Tags:

c#

char

How we can find out the next character of the entered one. For example, if I entered the character "b" then how do I get the answer "c"?

like image 591
MAC Avatar asked Jun 22 '09 09:06

MAC


People also ask

How do I find my next character?

To read a char, we use next(). next() function returns the next token/word in the input as a string and charAt(0) function returns the first character in that string.

How do I get the next letter in C++?

Try this: char letter = 'c'; if (letter == 'z') nextChar = 'a'; else if (letter == 'Z') nextChar = 'A'; else nextChar = (char)(((int)letter) + 1);

What is a method that can be used to increment letters?

Basically it increments letters like the column ID's of an Excel spreadsheet. nextChar('yz'); // returns "ZA" function nextChar(c) { var u = c. toUpperCase(); if (same(u,'Z')){ var txt = ''; var i = u. length; while (i--) { txt += 'A'; } return (txt+'A'); } else { var p = ""; var q = ""; if(u.


6 Answers

Try this:

char letter = 'c';

if (letter == 'z')
    nextChar = 'a';
else if (letter == 'Z')
    nextChar = 'A';

else
    nextChar = (char)(((int)letter) + 1);

This way you have no trouble when the char is the last of the alphabet.

like image 86
rogeriopvl Avatar answered Oct 07 '22 15:10

rogeriopvl


How about:

char first = 'c';
char nextChar = (char)((int) first + 1);
like image 37
Hemant Avatar answered Oct 07 '22 15:10

Hemant


Note that a char will implicitly cast to an int. Here's a simplified solution:

char incrementCharacter(char input)
{
    return (input == 'z'? 'a': (char)(input + 1));
}
like image 45
JoshL Avatar answered Oct 07 '22 15:10

JoshL


Perhaps the simplest way is a little function and an array of the 26 chars. Then you can decide what you want to return for 'z'.

like image 35
Colin Pickard Avatar answered Oct 07 '22 16:10

Colin Pickard


Convert the character to a number, increment the number and then convert back.

But consider what will happen for "z" or "á" (Latin Small Leter A with Acute).

like image 43
Richard Avatar answered Oct 07 '22 17:10

Richard


This Change value useful for Excel application to find previous column

public static string PrevExecelColumn( string s)
    {
        s = s.ToUpper();
        char[] ac = s.ToCharArray();
        int ln = ac.Length;
        for (int i = ln - 1; i > -1; i--)
        {
            char c = ac[i];

            if (c == 'A')
            {
                ac[i] = 'Z';
                continue;
            }

            ac[i] = (char)(((int)ac[i]) - 1);
            break;

        }
        s = new string(ac);
        return s;
   }  
like image 26
Moisey Oysgelt Avatar answered Oct 07 '22 16:10

Moisey Oysgelt