Java中截取特定字符或字符串片段的方法有哪些?
- 后端开发
- 2025-11-02
- 11
Java中截取字符串的方法有很多种,可以根据不同的需求选择合适的方法,以下是一些常用的截取字符串的方法:
使用 String.substring(int beginIndex, int endIndex) 方法
substring 方法是Java中最常用的截取字符串的方法之一,它允许你指定开始和结束索引来截取子字符串。

| 参数 | 说明 |
|---|---|
| beginIndex | 子字符串的起始索引(包括) |
| endIndex | 子字符串的结束索引(不包括) |
String original = "Hello, World!"; String subString = original.substring(7, 12); // 截取 "World" System.out.println(subString); // 输出: World
使用 String.substring(int beginIndex) 方法
这个方法与上一个方法类似,但它只接受一个参数,即子字符串的起始索引。
String original = "Hello, World!"; String subString = original.substring(7); // 截取 "World!" System.out.println(subString); // 输出: World!
使用 String.indexOf(String str) 方法
indexOf 方法可以找到子字符串在原字符串中的位置,并返回该位置的索引,你可以使用 substring 方法来截取所需的子字符串。
String original = "Hello, World!"; int index = original.indexOf("World"); // 返回 "World" 的起始索引 String subString = original.substring(index, index + 5); // 截取 "World" System.out.println(subString); // 输出: World
使用 String.split(String regex) 方法
split 方法可以将字符串分割成多个子字符串,并返回一个字符串数组,你可以直接访问数组中的元素来获取所需的子字符串。

String original = "Hello, World!"; String[] splitString = original.split(","); // 以逗号分割字符串 String subString = splitString[1]; // 获取第二个子字符串 System.out.println(subString); // 输出: World
使用 String.replaceAll(String regex, String replacement) 方法
replaceAll 方法可以将字符串中匹配正则表达式的部分替换为指定的字符串,如果你将正则表达式设置为 ,则可以删除除第一个字符之外的所有内容。
String original = "Hello, World!"; String subString = original.replaceAll(".*", original.charAt(0) + ""); // 只保留第一个字符 System.out.println(subString); // 输出: H
FAQs
Q1:如何截取字符串中的最后一个单词?

A1: 要截取字符串中的最后一个单词,你可以使用 split 方法将字符串分割成单词数组,然后获取最后一个元素。
String original = "This is a sample string."; String[] words = original.split("\s+"); // 使用正则表达式分割单词 String lastWord = words[words.length 1]; // 获取最后一个单词 System.out.println(lastWord); // 输出: string.
Q2:如何截取字符串中的一部分,但不包括首尾字符?
A2: 如果你需要截取字符串中的一部分,但不包括首尾字符,可以使用 substring 方法,如果你想要截取从第二个字符开始,到倒数第二个字符结束的子字符串,可以使用以下代码:
String original = "Hello, World!"; String subString = original.substring(1, original.length() 2); // 截取 "ello, World" System.out.println(subString); // 输出: ello, World