我有很多字符,例如:

“ 8798dsfgsd98gs87£%”%001912.43.36。“

如何删除所有非数字字符并获取数字,以便获得:

“ 879898870019124336”

在C#中?

谢谢

最佳答案

var text = "8798dsfgsd98gs87£%"%001912.43.36.";
var numText = new string( text.Where(c=>char.IsDigit(c)).ToArray() );


编辑:
如果您的目标是性能,请使用StringBuilder

var text = "8798dsfgsd98gs87£%"%001912.43.36.";
var numText = new StringBuilder();
for(int i = 0; i < text.Length; i++) {
    char c = text[i];
    if ( char.IsDigit(c) ) {
        numText.Append(c);
    }
}

关于c# - 如何删除字符串中的所有非数字字符,而仅将数字作为新字符串获取?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6454193/

10-11 13:11
查看更多