String.IndexOf 方法 (Char, [startIndex], [count])
報(bào)告指定字符在此實(shí)例中的第一個(gè)匹配項(xiàng)的索引。搜索從指定字符位置開(kāi)始,并檢查指定數(shù)量的字符位置。
參數(shù)
value
要查找的 Unicode 字符。 對(duì) value 的搜索區(qū)分大小寫。
startIndex(Int32)
可選項(xiàng),搜索起始位置。不設(shè)置則從0開(kāi)始。
count(Int32)
可選項(xiàng),要檢查的字符位置數(shù)。
返回值
如果找到該字符,則為 value 的索引位置;否則如果未找到,則為 -1。
IndexOf()
查找字串中指定字符或字串首次出現(xiàn)的位置,返首索引值,如:
str1.IndexOf("字"); //查找“字”在str1中的索引值(位置)
str1.IndexOf("字串");//查找“字串”的第一個(gè)字符在str1中的索引值(位置)
str1.IndexOf("字",start,end);//從str1第start+1個(gè)字符起,查找end個(gè)字符,查找“字”在字符串STR1中的位置[從第一個(gè)字符算起]注意:start+end不能大于str1的長(zhǎng)度
indexof參數(shù)為string,在字符串中尋找參數(shù)字符串第一次出現(xiàn)的位置并返回該位置。如string s="0123dfdfdf";int i=s.indexof("df");這時(shí)i==4。
如果需要更強(qiáng)大的字符串解析功能應(yīng)該用Regex類,使用正則表達(dá)式對(duì)字符串進(jìn)行匹配。
indexof() :在字符串中從前向后定位字符和字符串;所有的返回值都是指在字符串的絕對(duì)位置,如為空則為- 1
string test="asdfjsdfjgkfasdsfsgfhgjgfjgdddd";
test.indexof('d') =2 //從前向后 定位 d 第一次出現(xiàn)的位置
test.indexof('d',1) =2 //從前向后 定位 d 從第三個(gè)字符串第一次出現(xiàn)的位置
test.indexof('d',5,2) =6 //從前向后 定位 d 從第5 位開(kāi)始查,查2位,即 從第5位到第7位;
lastindexof() :在字符串中從后向前定位字符和字符串;、
用法和 indexof() 完全相同。
下面介紹 IndexOfAny ||lastindexofany
他們接受字符數(shù)組做為變?cè)?,其他方法同上,返回?cái)?shù)組中任何一個(gè)字符最早出現(xiàn)的下標(biāo)位置
如下
char[] bbv={'s','c','b'};
string abc = "acsdfgdfgchacscdsad";
Response.Write(abc.IndexOfAny(bbv))=1
Response.Write(abc.IndexOfAny(bbv, 5))=9
Response.Write(abc.IndexOfAny(bbv, 5, 3))=9
lastindexofany 同上。
更多建議: