我有一个字符串,其中包含Character
和Numeral
格式的值以及<>
等特殊字符。因此,根据我的要求,我必须删除这些特殊字符和来自字符串的Character
。
这是字符串示例..
string s = "O9668253";
string s2 = "<O>9668253";
我需要输出......
string s = "9668253";
string s2 = "9668253";
那么我怎么能在这里得到这个。请帮助我..
答案 0 :(得分:3)
您可以使用LINQ。如果我理解正确你只想要数字:
string s = "<O>9668253";
string nums = new string(s.Where(char.IsDigit).ToArray());
或者如果你想要信件:
string s = "<O>9668253";
string lettersAndNums = new string(s.Where(char.IsLetterOrDigit).ToArray());
如果你想要非数字,只需否定它。你必须写出lambda表达式:
string s = "<O>9668253";
var nums = new string(s.Where(c => !char.IsDigit(c)).ToArray());
答案 1 :(得分:1)
类似的问题:How do I remove all non alphanumeric characters from a string except dash?
假设您要删除所有非数字字符:
用空字符串替换[^ 0-9]。
Regex rgx = new Regex("[^0-9]");
str = rgx.Replace(str, "");
@Steve - 感谢指出错误