Java中的substring()函数详细解析及使用方法
发布时间:2023-05-23 21:29:59
概述
Java中的substring()函数是用于截取字符串的函数,它可以从一个字符串中选择一个子串,返回一个新字符串。该函数可以接受一个或两个参数, 个参数是子串开始的位置(从0开始计数),第二个参数(可选)是子串的结束位置(不包括该位置的字符)。如果只有一个参数,则子串将从该位置一直到字符串的末尾。
该函数在Java中的应用非常广泛,常见的场景包括从文件路径中提取文件名、截取字符串中的日期或时间、从URL中提取域名等等。
使用方法
下面是substring()函数的语法:
public String substring(int startIndex) public String substring(int startIndex, int endIndex)
其中,startIndex指示要开始提取的字符的位置,endIndex指示要停止提取的字符的位置。如果没有指定endIndex,则表示提取到字符串的结尾。
以下是一些示例:
1. 截取字符串的一部分:
假如有一个字符串"Hello World!",我们想要提取其中的"World!",可以使用以下代码:
String str = "Hello World!"; String newStr = str.substring(6); // 从第7个字符(W)开始截取到结尾 System.out.println(newStr); // 输出:World!
2. 获取文件名:
假如我们有一个文件路径"/home/user/Documents/sample.txt",我们想要提取其中的文件名"sample.txt",可以使用以下代码:
String path = "/home/user/Documents/sample.txt";
int index = path.lastIndexOf("/") + 1; // 找到最后一个"/"的位置并加上1
String fileName = path.substring(index); // 从上面找到的位置开始截取到结尾
System.out.println(fileName); // 输出:sample.txt
3. 提取URL中的域名:
假如我们有一个URL "https://www.google.com/search?q=java",我们想要提取其中的域名"www.google.com",可以使用以下代码:
String url = "https://www.google.com/search?q=java";
int start = url.indexOf("://") + 3; // 找到"://"的位置并加上3,排除协议名
int end = url.indexOf("/", start); // 从上面找到的位置开始找到 个"/"的位置
String domain = url.substring(start, end); // 从上面找到的位置开始截取到 个"/"的位置
System.out.println(domain); // 输出:www.google.com
需要注意的是,如果指定的startIndex和endIndex超出了字符串的实际长度,substring()函数不会抛出异常,而是会自动将结束位置截断为字符串的结尾。此外,startIndex必须大于或等于0,endIndex必须大于或等于startIndex,否则函数会抛出异常。
