博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
indexof 和 indexofany有什么区别
阅读量:4353 次
发布时间:2019-06-07

本文共 1571 字,大约阅读时间需要 5 分钟。

    
定位子串是指在一个字符串中寻找其中包含的子串或者某个字符。在String
类中,常用的定位子串和字符的方法包括IndexOf/LastIndexOf
IndexOfAny/LastIndexOfAny
,下面进行详细介绍。

1IndexOf/LastIndexOf

IndexOf方法用于搜索在一个字符串中,某个特定的字符或者子串第一次出现的位置,该方法区分大小写,并从字符串的首字符开始以0计数。如果字符串中不包含这个字符或子串,则返回-1。常用的重载形式如下所示。

1)定位字符:

int IndexOf(char value)

int IndexOf(char value, int startIndex)

int IndexOf(char value, int startIndex, int count)

2)定位子串:

int IndexOf(string value)

int IndexOf(string value, int startIndex)

int IndexOf(string value, int startIndex, int count)

在上述重载形式中,其参数含义如下:

value:待定位的字符或者子串。

startIndex:在总串中开始搜索的其实位置。

count:在总串中从起始位置开始搜索的字符数。

下面的代码在“Hello”中寻找字符‘l’第一次出现的位置。

代码4-7 使用IndexOf寻找字符第一次出现位置:Default.aspx.cs

1.      String s=”Hello”;

2.      int I = s.IndexOf(‘l’));               //2

IndexOf类似,LastIndexOf用于搜索在一个字符串中,某个特定的字符或者子串最后一次出现的位置,其方法定义和返回值都与IndexOf相同,不再赘述。

2IndexOfAny/LastIndexOfAny

IndexOfAny方法功能同IndexOf类似,区别在于,它可以搜索在一个字符串中,出现在一个字符数组中的任意字符第一次出现的位置。同样,该方法区分大小写,并从字符串的首字符开始以0计数。如果字符串中不包含这个字符或子串,则返回-1。常用的IndexOfAny重载形式有3种:

1int IndexOfAny(char[]anyOf)

2int IndexOfAny(char[]anyOf, int startIndex)

3int IndexOfAny(char[]anyOf, int startIndex, int count)

在上述重载形式中,其参数含义如下:

1anyOf:待定位的字符数组,方法将返回这个数组中任意一个字符第一次出现的位置。

2startIndex:在原字符串中开始搜索的其实位置。

3count:在原字符串中从起始位置开始搜索的字符数。

下例在“Hello”中寻找字符‘l’第一次和最后一次出现的位置。

代码4-8 使用IndexOfAny寻找子串第一次和最后一次出现位置:Default.aspx.cs

1.      String s = “Hello”;

2.      char[] anyOf={'H','e','l'};

3.      int i1 = s.IndexOfAny(anyOf));                          //0

4.      int i2 = s.LastIndexOfAny(anyOf));                   //3

IndexOfAny类似,LastIndexOfAny用于搜索在一个字符串中,出现在一个字符数组中任意字符最后一次出现的位置。

转载于:https://www.cnblogs.com/dongzhen/archive/2013/03/06/2946332.html

你可能感兴趣的文章
对照实验(1)-批量清理系统临时文件
查看>>
GOF设计模式(02)抽象工厂模式
查看>>
Java NIO 详解(一)
查看>>
人类的奇怪之处
查看>>
eclipse debug (调试) 学习心得
查看>>
有哲理的一段话
查看>>
TCP协议中的三次握手和四次挥手(图解)
查看>>
智能指针 线程变量
查看>>
linux:vi报错“Can’t write viminfo file /root/.viminfo!”
查看>>
PostgreSQL中如何得到一个随机的字符
查看>>
bulk insert 在mssql中使用
查看>>
兼容IE,Firefox,chrome等浏览器 : 设为首页和收藏的Javascript代码
查看>>
控件的局部圆角问题
查看>>
设计师必看的25个优秀的移动界面设计案例
查看>>
Skippr – 轻量、快速的 jQuery 幻灯片插件
查看>>
12款高质量的免费 CSS 网站模板下载
查看>>
winform Label与DataGridView右对齐 分类: WinF...
查看>>
VC++获取网卡MAC、硬盘序列号、CPU ID、BIOS编号
查看>>
POJ 1734 求最小环路径 拓展Floyd
查看>>
m个相同苹果放的n个相同盘子中的算法
查看>>