• indexof 和 indexofany有什么区别


        定位子串是指在一个字符串中寻找其中包含的子串或者某个字符。在String类中,常用的定位子串和字符的方法包括IndexOf/LastIndexOfIndexOfAny/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用于搜索在一个字符串中,出现在一个字符数组中任意字符最后一次出现的位置。

  • 相关阅读:
    【Python爬虫】第五课(b站弹幕)
    【Python爬虫】第四课(查询照片拍摄地址)
    一些tips
    【Python爬虫】第三课(提取数据)
    【Python爬虫】第二课(请求头设置)
    【Python爬虫】第一课
    【数据分析】如何进行数据分析
    【数据分析】派单排序策略优化验证(附sql查询代码)
    python基础01
    消息
  • 原文地址:https://www.cnblogs.com/qinying/p/1295730.html
Copyright © 2020-2023  润新知