java中如何截取字符串.txt
根据提供的文件信息,本文将详细解释Java中截取字符串的各种方法及其使用场景,并结合部分示例代码进行说明。 ### Java中截取字符串的方法 在Java编程语言中,字符串的处理是一项非常重要的技能,特别是在开发中涉及到文本分析或数据处理的应用场景。其中,字符串的截取是常见且基础的操作之一。Java提供了多种方式来实现字符串的截取功能,包括`substring()`、`subSequence()`等内置方法。下面将逐一介绍这些方法及其具体用法。 #### 1. `substring()` 方法 `substring()` 方法是Java中最常用的字符串截取方法之一。该方法有两种形式: - `public String substring(int beginIndex)`:返回一个新的字符串,该字符串是从原字符串的`beginIndex`位置开始到字符串末尾的所有字符。 - `public String substring(int beginIndex, int endIndex)`:返回一个新的字符串,该字符串是从原字符串的`beginIndex`位置开始到`endIndex - 1`位置的所有字符。 **示例代码**: ```java String str = "rcinn.cn"; System.out.println(str.substring(3)); // 输出 "nn.cn" System.out.println(str.substring(1, 5)); // 输出 "cinn" ``` 需要注意的是,`substring`方法中的索引是从0开始的。如果只提供一个参数,则表示从该位置开始截取直到字符串结束;如果提供两个参数,则表示从第一个参数的位置开始,直到第二个参数位置之前的字符为止。 #### 2. `slice()` 方法 `slice()` 方法在提供的内容中提到,但实际上,Java标准库中并没有直接提供名为`slice()`的方法来操作字符串。这可能是JavaScript中的方法。因此,在Java中,我们通常不使用`slice()`来截取字符串。 #### 3. `subSequence()` 方法 `subSequence()` 方法也是Java字符串类中提供的一种用于截取字符串的方法。它返回的是一个`CharSequence`对象,而不是直接的`String`对象。 **示例代码**: ```java String str = "rcinn.cn"; CharSequence subSeq = str.subSequence(1, 5); System.out.println(subSeq.toString()); // 输出 "cinn" ``` #### 4. `charAt()` 和 `indexOf()` 方法组合 除了上述方法外,还可以通过`charAt()`和`indexOf()`方法组合来手动实现字符串的截取功能。 **示例代码**: ```java String str = "rcinn.cn"; int start = str.indexOf("c"); StringBuilder sb = new StringBuilder(); for (int i = start; i < str.length(); i++) { sb.append(str.charAt(i)); } System.out.println(sb.toString()); // 输出 "cinn.cn" ``` ### MySQL中字符串截取方法 虽然本文主要关注Java中的字符串截取方法,但提供的文件中还提到了MySQL数据库中的字符串截取方法。这里也简单介绍一下MySQL中常用的字符串截取函数: - **LEFT(str, length)**:返回从字符串左侧开始的前`length`个字符。 - **RIGHT(str, length)**:返回从字符串右侧开始的前`length`个字符。 - **SUBSTRING(str, pos)** 或 **SUBSTR(str, pos)**:返回从位置`pos`开始的子串。 - **SUBSTRING(str, pos, length)** 或 **SUBSTR(str, pos, length)**:返回从位置`pos`开始长度为`length`的子串。 - **SUBSTRING_INDEX(str, delim, count)**:返回由`delim`分隔符分割后的第`count`个子串。 以上是对Java中截取字符串方法以及部分MySQL字符串截取函数的详细介绍。通过这些方法,开发者可以灵活地处理各种字符串相关的任务。
slice和substring都可以接受一个或两个参数,第1个参数是获取要截取的字符串的直始位置,第2个参数如果不为空则是获取要截取的字符串的结束位置的前一位(也就是说获取的终点位置不在返回值内),为空表示截取到整个字符串的最后一个字符。
我们来看下两种方法的用法
注意:字符串的位数都是从0开始
<script language="javascript">
var stmp = "rcinn.cn";
//使用一个参数
alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
//使用两个参数
alert(stmp.slice(1,5))//从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substring(1,5));//从第2个字符开始,到第5个字符;返回"cinn"
//如果只用一个参数并且为0的话,那么返回整个参数
alert(stmp.slice(0));//返回整个字符串
alert(stmp.substring(0));//返回整个字符串
//那如何只反回第一个字符呢,可以用其它的函数,那如果一定要用这两个方法的话就指定第一个参数为0,第二个参数为1,看下面的例子
alert(stmp.slice(0,1));//返回"r"
alert(stmp.substring(0,1));//返回"r"
//在上面的例子中我们可以看出slice()和substring()的用法是相同的,返回的值也是一样的,但当参数为负数时,他们的返回值却不一样,看下面的例子
alert(stmp.slice(2,-5));//返回"i"
alert(stmp.substring(2,-5));//返回"rc"
//从上面两个例子可以看出slice(2,-5)实际上是slice(2,3),负5转换成正3;而substring(2,-5)实际上是substring(2,0),负数转换为0,swubstring总是把最小的数作为起始位置。
</script>
String.substr(N1,N2) 这个就是我们常用的从指定的位置(N1)截取指定长度(N2)的字符串;
String.substring(N1,N2) 这个就有点特别了,它是先从N1,N2里找出一个较小的值,然后从字符串的开始位置算起,截取较小值位置和较大值位置之间的字符串,截取出来的字符串的长度为较大值与较小值之间的差。
- refreshagain2013-04-08还行吧。我想要截取复杂字符串,字符串中包括数组的那种。这里面没有
- Mr_ye2013-06-21标题是java,里面讲的是,JS 和Mysql 的截取方法?
- KN60082014-01-11哈哈 搞定 学习了
- 粉丝: 3
- 资源: 24
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 冯尔康320240941121.zip
- 基于Java和CSS的bookStore项目源码学习Git和SSH框架实践
- 基于Qt6.2.4的数据库应用课程设计-景点门票管理系统的设计与实现.zip
- 基于Java后端与Vue前端技术的在线商城设计源码
- 基于Qt创建的Linux系统下的浏览器.zip
- UBNT-ER-x 固件刷机.zip学习资源
- Prophet时间序列预测入门.ipynb
- 一款由Java写的射击游戏.zip算法资源
- 一些java的小游戏项目,贪吃蛇啥的.zip用户手册
- 在线实时的斗兽棋游戏,时间赶,粗暴的使用jQuery + websoket 实现实时H5对战游戏 + java.zip课程设计