Convert character to its alphabet integer position?

BlueChippy picture BlueChippy · Nov 18, 2013 · Viewed 95.1k times · Source

I'm trying to find if there is a quick way to get the integer position of a character in the alphabet (C#).

I can simply create an array and get the position, but seems there must be a "nice and funky" way of acheiving this?

I've also looked at taking the ASCII position of the (uppercase) character in relation to "65"...but again, seems more work than it should be!

[English 26 letter alphabet only, no internationalisation required - and no, this is not homework!]

Answer

Ahmed KRAIEM picture Ahmed KRAIEM · Nov 18, 2013

Programming 101:

char c = 'A';
//char c = 'b'; you may use lower case character.
int index = char.ToUpper(c) - 64;//index == 1