一、indexOf()
indexOf("\\"):返回"\\"字符在此实例中第一个出现的索引位置,实例的下标是从0开始,如果未找到则返回-1.
indexOf("\\", 7):返回在此实例中从下标7开始的,第一次出现"\\"的位置,如果未找到返回-1.
二、lastIndexOf()
lastIndexOf("\\"):返回"\\"在此实例中最后一个出现的索引位置。即从右向左搜索,第一次出现的"\\"的位置,如果未找到则返回-1.
lastIndexOf("\\", 7):返回在此实例中从下标0开始到下标7结束的这一段子串中,最后一次出现"\\"的位置 。即从右向左搜索,第一次出现的"/"的位置,如果未找到则返回-1.
三、subString()
Substring:截取字符串。Substring(7,2)表示从下标7开始,截取长度为2的字符串,Substring(7)表示从下标7开始,一直截取到字符串末尾。
PS:indexOf和lastIndexOf的区别就搜索的方向不一样,indexOf是从左向右,lastIndexOf是从右向左,尽管搜索方向不一样,但是字符下标依然从左向右加1,从0开始。
四、例子:
代码:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string FilePath = "D:\\files\\small.txt"; Console.WriteLine(FilePath); int a= FilePath.IndexOf("f"); Console.WriteLine(a); int b = FilePath.IndexOf("s",3); Console.WriteLine(b); int c = FilePath.LastIndexOf("x"); Console.WriteLine(c); int d = FilePath.LastIndexOf("s",15); Console.WriteLine(d); string e = FilePath.Substring(7,2); Console.WriteLine(e); string f = FilePath.Substring(7); Console.WriteLine(f); int index = FilePath.LastIndexOf(‘\\‘); Console.WriteLine(index); string folder = FilePath.Substring(0, index); Console.WriteLine(folder); string ShapeName = FilePath.Substring(index + 1); Console.WriteLine(ShapeName); Console.ReadKey(); } } }
运行结果: