C#: 一个string字符串,从左往右,如何判断第几位不是“0”?

2025-05-11 12:57:56
推荐回答(5个)
回答(1):

//因为C#的第一位是0,而我们日常中第一位是1,所以这里就有7和8的差别了
string txt= "abcdefg0hijklm";
int l=txt.IndexOf('0');
if(l==7)
{
MessageBox.Show("第八位是0");
}

char[] chars=txt.ToCharArray();
if(chars[7]=='0')
{
MessageBox.Show("第八位是0");
}

回答(2):

使用 indexof
用法:
string o = "011111";
int index = o.indexof('0');

// index 就是你要获得的第一个字符为0 的位置了 如果你还要获取到该位置的字符 可以
// string x = o.substring(index,index+1):

回答(3):

str.SubString(n,1)=="0" YES 包含“0” NO 不包含“0” n:你需要知道的字符串的位置!不能大于字符串总长度!

回答(4):

先用trim(“0”)方法去掉左右两边的0,然后获得首字符,再在原字符串中indexof()搞定,就不贴代码了~~

回答(5):

知道指定位数的话 直接用substring(开始值,截取位数)。截取以后再判断着个是不是0