回答
您應該能夠使用LINQ照顧那(現測試語法):
var asciiCodes = S.Where(c => char.IsLetter(c)).Select(c => (int)c);
或者,如果你不想使用LINQ-Y版本:
var characterCodes = new List<int>();
foreach(var c in S)
{
if(char.IsLetter(c))
{
characterCodes.Add((int)c);
}
}
您可以使用以下代碼將字符轉換爲代碼點:(int)'a'
。
要單獨的(如果你知道它的分裂上 - 你可以使用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);
}
您在這裏意味着什麼asciilist – 2010-11-12 14:04:12
也許不是一個好名字,但我不知道OP對這個列表想要什麼,所以我只是把它存儲在某個地方而不是對它做任何邏輯。這是一個包含char的字典,它與ascii值相關聯,但正如您可能理解的那樣,除了示例效果本身之外,它是無用的。 – 2010-11-12 14:09:23
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);
}
}
我可以在non-linq版本 – 2010-11-12 14:06:03
非linq版本查找更新版本:) – Katalonis 2010-11-12 14:11:25
您可以使用子獨自獲得的字母和一個數組使用for循環字母的儲值,並通過一個
- 1. 如何定義包含非ASCII字符的字符串文字?
- 2. 獲得一個字符的ASCII值在C#字符串
- 3. 反轉包含ASCII字符和非ASCII字符的字符串
- 4. 在Python中刪除任何給定的字符串類型的非ASCII字符
- 5. 如何獲得我給出的字符串後的字符串?
- 6. 在shell中獲得非ASCII字符Linux
- 7. C#:如何獲得一個字符串的第一個字符?
- 8. 如何獲得字符串中第一個非空白字符的索引?
- 9. 如何獲得特定字符後的字符串的字母
- 10. 文字中的非ASCII,非Unicode字符
- 11. 如何獲得特定的字符串形式的字符串
- 12. 如何獲得一個字符串在ObjectiveC中的另一個字符串?
- 13. 如何獲得特定的子字符串的位置在一個字符串
- 14. 如何獲得給定字符串中第一個和最後一個下劃線之間的字符串?
- 15. 如何從給定的字符串獲取子字符串?
- 16. 如何獲得給定值的字符串的標識符
- 17. 如何獲得字符串中的特定字符
- 18. 如何確定一個字符串是否包含非字母數字字符?
- 19. 如何獲得一個NSString *的ASCII值,指向一個字符?
- 20. 獲得一個字符串
- 21. 獲得一個字符串
- 22. C中的非ASCII字符
- 23. fputcsv中的非ascii字符
- 24. PHP中的非ASCII字符?
- 25. 在bash字符串後如何獲得的第一個數字
- 26. Tcl獲取字符串中每個字符的ASCII碼
- 27. 在字符串中獲得大多數字符的字符
- 28. C#:如何獲得字符串中的字符串的長度[]
- 29. 獲得一定數量的字符後,在字符串中的某個單詞?
- 30. 如何獲得REGEXP_SUBSTR一個字符串
我會用在哪裏!char.IsNumber(三)打印一個,但linq是一個很好的答案 – Kell 2010-11-12 14:19:48
@Kell - !char.IsNumber(c)仍然會返回OP明確表示他不想要的標點(破折號)。我忘記了char.IsLetter(),儘管它會做他們需要的。 – 2010-11-12 14:24:57
我以爲他想要非數字字符cos有2個額外的非數字。在這種情況下,我會使用Char.IsLetter(c) – Kell 2010-11-12 14:28:54