我将会有以下这个字符串
String S="AB-1233-444";
我希望将这个中的AB分开,并找出这两个字母的ASCII码。
你应该能够使用LINQ来处理这个问题(现在正在测试语法):
var asciiCodes = S.Where(c => char.IsLetter(c)).Select(c => (int)c);
或者如果您不想使用 LINQ 版本:
var characterCodes = new List<int>();
foreach(var c in S)
{
if(char.IsLetter(c))
{
characterCodes.Add((int)c);
}
}
如果你知道字符串是以 - 分隔的,可以使用 string.Split
进行分割。
要获取字符 'A' 的 ASCII 表示,可以使用以下代码:
int asciivalue = (int)'A';
完整的示例可能是:
Dictionary<char,int> asciilist = new Dictionary<char,int>();
string s = "AB-1233-444";
string[] splitstrings = s.Split('-');
foreach( char c in splitstrings[0]){
asciilist.Add( c, (int)c );
}
var result = (from c in S.ToCharArray() where
((int)c >= (int)'a' &&
(int)c <= (int)'z') ||
((int)c >= (int)'A' &&
(int)c <= (int)'Z') select c).ToArray();
非Linq版本如下:
List<char> result = new List<char>();
foreach(char c in S)
{
if(((int)c >= (int)'a' &&
(int)c <= (int)'z') ||
((int)c >= (int)'A' &&
(int)c <= (int)'Z'))
{
result.Add(c);
}
}
(int)'a'
。