java如何取出字符串
取出字符串的常用方法
在Java中,字符串操作是常见的任务之一。字符串的取出通常涉及截取子串、分割字符串或提取特定模式的字符。以下是几种常用的方法:
使用substring方法
substring方法可以从字符串中截取指定范围的子串。它有两个重载版本:

String str = "Hello, World!";
String sub1 = str.substring(7); // 从索引7开始到末尾,结果为"World!"
String sub2 = str.substring(0, 5); // 从索引0到5(不包括5),结果为"Hello"
使用split方法
split方法可以根据正则表达式将字符串分割成数组,适合提取特定分隔符分隔的部分:
String str = "apple,banana,orange";
String[] fruits = str.split(","); // 结果为["apple", "banana", "orange"]
String firstFruit = fruits[0]; // 取出第一个元素"apple"
使用charAt方法
如果需要取出单个字符,可以使用charAt方法:

String str = "Java";
char firstChar = str.charAt(0); // 取出第一个字符'J'
使用正则表达式匹配
通过Pattern和Matcher可以提取符合特定模式的子串:
import java.util.regex.*;
String str = "Price: $100, Discount: 20%";
Pattern pattern = Pattern.compile("\\$\\d+");
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {
String price = matcher.group(); // 取出"$100"
}
使用StringTokenizer类
StringTokenizer是另一种分割字符串的方式,适合简单的分隔符场景:
import java.util.StringTokenizer;
String str = "one;two;three";
StringTokenizer tokenizer = new StringTokenizer(str, ";");
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken(); // 依次取出"one", "two", "three"
}
注意事项
- 字符串索引从0开始,使用
substring或charAt时需注意索引范围,避免StringIndexOutOfBoundsException。 split方法的正则表达式需正确转义特殊字符(如.需写为\\.)。- 对于复杂的字符串提取,正则表达式通常更灵活高效。
以上方法覆盖了大多数字符串取出的需求,根据具体场景选择合适的方式即可。






