首页 > 开发 > Java > 正文

Java的字符串中对子字符串的查找方法总结

2024-07-13 09:55:57
字体:
来源:转载
供稿:网友

这篇文章主要介绍了Java的字符串中对子字符串的查找方法总结,是Java入门学习中的基础知识,需要的朋友可以参考下

Java中字符串中子串的查找共有四种方法,如下:

1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引。

2、int indexOf(String str, int startIndex):从指定的索引处开始,返回第一次出现的指定子字符串在此字符串中的索引。

3、int lastIndexOf(String str) :返回在此字符串中最右边出现的指定子字符串的索引。

4、int lastIndexOf(String str, int startIndex) :从指定的索引处开始向后搜索,返回在此字符串中最后一次出现的指定子字符串的索引。

indexof()用法说明

 

 
  1. indexof() 

返回 String 对象内第一次出现子字符串的字符位置。

 

 
  1. string.indexOf(subString[, startIndex]) 

参数

 

  1. string 

必选项。String 对象或文字。

subString 必选项。

要在 String 对象中查找的子字符串。

starIndex 可选项。

该整数值指出在 String 对象内开始查找的索引。如果省略,则从字符串的开始处查找。

说明

indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回-1。

如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。

从左向右执行查找。否则,该方法与 lastIndexOf 相同。

示例

下面的示例说明了 indexOf 方法的用法。

 

 
  1. function IndexDemo(str2){  
  2. var str1 = "BABEBIBOBUBABEBIBOBU" 
  3. var s = str1.indexOf(str2);  
  4. return(s);  

java查找字符串中的包含子字符串的个数

1.用indexof的方法:

 

 
  1. public class Test11  
  2.  
  3. private static int counter = 0; 
  4. /** 
  5. * @param args 
  6. */ 
  7. public static void main(String[] args)  
  8. String str ="sdSS**&HGJhadHCASch& ^^"
  9. int i = stringNumbers(str); 
  10. System.out.println(i); 
  11.  
  12. public static int stringNumbers(String str) 
  13. if (str.indexOf("java")==-1) 
  14. return 0; 
  15. else if(str.indexOf("java") != -1) 
  16. counter++; 
  17. stringNumbers(str.substring(str.indexOf("java")+4)); 
  18. return counter; 
  19. return 0; 

2.如果子字符串不是一个首尾相同的字符串,还可以这样实现:

 

 
  1. if(str.indexOf("java") != -1) 
  2. String[] str1 = str.split("java"); 
  3. System.out.println(str1.length-1); 
  4. else 
  5. System.out.println(0); 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表