在 Java 中,你可以使用多种方式来判断一个字符串是否包含另一个字符串。我将为你介绍三种常见的实现方式,包括使用 String
的内置方法、正则表达式以及第三方库 Apache Commons Lang 的方法。
这是最简单的一种方法,使用 String
类提供的内置方法 contains
来判断一个字符串是否包含另一个字符串。
String mainString = "Hello, world!";
String subString = "world";
boolean contains = mainString.contains(subString);
if (contains) {
System.out.println("Main string contains the substring.");
} else {
System.out.println("Main string does not contain the substring.");
}
如果你需要更复杂的匹配,可以使用正则表达式来判断字符串是否包含另一个字符串。
import java.util.regex.*;
String mainString = "Hello, world!";
String subString = "wo\\w+";
Pattern pattern = Pattern.compile(subString);
Matcher matcher = pattern.matcher(mainString);
if (matcher.find()) {
System.out.println("Main string contains the substring.");
} else {
System.out.println("Main string does not contain the substring.");
}
Apache Commons Lang 库提供了更多字符串处理的工具,其中有一个方法可以用来判断一个字符串是否包含另一个字符串。
首先,在你的项目的 Maven 或 Gradle 配置文件中添加 Apache Commons Lang 的依赖:
Maven:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version> <!-- 使用最新版本 -->
</dependency>
Gradle:
implementation 'org.apache.commons:commons-lang3:3.12.0' // 使用最新版本
然后使用如下代码:
import org.apache.commons.lang3.StringUtils;
String mainString = "Hello, world!";
String subString = "world";
boolean contains = StringUtils.contains(mainString, subString);
if (contains) {
System.out.println("Main string contains the substring.");
} else {
System.out.println("Main string does not contain the substring.");
}
这些方法中,使用内置方法是最简单的,但可能不够灵活。正则表达式则可以实现更复杂的匹配逻辑。而使用 Apache Commons Lang 库则可以在项目中使用更多字符串处理的工具。选择适合你需求的方法来判断字符串包含关系。