欢迎访问宙启技术站
智能推送

Java函数:如何在字符串中查找一个字符或子字符串?

发布时间:2023-06-22 00:48:29

在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中常用的几种查找字符或子字符串的方法,它们可以方便地实现字符串的查找和分割。