Java函数:如何在字符串中查找一个字符或子字符串?
在Java中,可以使用String类或StringBuilder类中的方法来查找一个字符或子字符串。下面将介绍几种查找字符或子字符串的方法:
1. indexOf() 方法
indexOf() 方法用于查找给定字符或字符串在原字符串中 次出现的位置。如果原字符串中不存在该字符或字符串,则返回-1。
语法:str.indexOf(ch) 或 str.indexOf(str2)
其中,str代表原字符串,ch代表要查找的字符,str2代表要查找的字符串。
例如:
String str = "Hello World";
int index = str.indexOf('o');
System.out.println("索引位置:" + index);
结果为:索引位置:4
说明字符o 次出现在字符串中的位置是4。
2. lastIndexOf() 方法
lastIndexOf() 方法用于查找给定字符或字符串在原字符串中最后一次出现的位置。如果原字符串中不存在该字符或字符串,则返回-1。
语法:str.lastIndexOf(ch) 或 str.lastIndexOf(str2)
其中,str代表原字符串,ch代表要查找的字符,str2代表要查找的字符串。
例如:
String str = "Hello World";
int index = str.lastIndexOf('o');
System.out.println("索引位置:" + index);
结果为:索引位置:7
说明字符o最后一次出现在字符串中的位置是7。
3. contains() 方法
contains() 方法用于判断原字符串是否包含给定的字符或字符串。
语法:str.contains(str2)
其中,str代表原字符串,str2代表要查找的字符串。
例如:
String str = "Hello World";
boolean result = str.contains("World");
System.out.println("包含该字符串:" + result);
结果为:包含该字符串:true
说明原字符串包含子字符串"World"。
4. matches() 方法
matches() 方法用于判断原字符串是否与给定的正则表达式匹配。
语法:str.matches(regex)
其中,str代表原字符串,regex代表要匹配的正则表达式。
例如:
String regex = "\\d+";
String str = "12345";
boolean result = str.matches(regex);
System.out.println("是否匹配:" + result);
结果为:是否匹配:true
说明原字符串是否为数字。
5. split() 方法
split() 方法用于将原字符串按照给定的分隔符分割成子字符串,并返回一个字符串数组。
语法:str.split(regex)
其中,str代表原字符串,regex代表分隔符的正则表达式。
例如:
String str = "Hello World";
String[] result = str.split("\\s");
for (String s : result) {
System.out.println(s);
}
结果为:
Hello
World
说明将原字符串按照空格分隔成了两个子字符串。
以上是Java中常用的几种查找字符或子字符串的方法,它们可以方便地实现字符串的查找和分割。
