java中查找字符串

 

java中查找字符串

String类提供了两种查找字符串的方法,它们允许在字符串中搜索指定的字符或字符串,其中的indexOf()方法用于搜索字符或子字符串首次出现的位置,lastIndexOf()方法用于搜索字符或子字符

 
查找字符串
String类提供了两种查找字符串的方法,它们允许在字符串中搜索指定的字符或字符串,其中的indexOf()方法用于搜索字符或子字符串首次出现的位置,lastIndexOf()方法用于搜索字符或子字符串最后一次出现的位置。
这两种方法被几种不同的方法重载。在所有这些情况下,方法返回字符或子字符串被发现的位置的下标,当搜索失败时,返回−1。
   indexOf(int ch)方法
该方法用于获取字符串中指定字符第一次出现处的索引,若字符没有出现则返回−1。
str.indexOf(ch)
ch:要搜索的字符。
str:一个字符串对象。
   lastIndexOf(int ch)方法
该方法用户获取字符串中指定字符最后一次出现处的索引,若字符没有出现则返回−1。
str.lastIndexOf(ch)
ch:要搜索的字符。
str:一个字符串对象。
   indexOf(String str)方法
该方法用于获取字符串中指定的子字符串首次出现的索引位置,如果子字符串作为该字符串的子字符串出现,则返回该子字符串的第一个字符的索引,如果没有作为一个子字符串出现则返回−1。
str.indexOf(substr)
substr:搜索的字符串。
str:一个字符串对象。
   lastIndexOf(String str)方法
该方法用于获取字符串中指定的子字符串最后一次出现的索引位置。如果子字符串作为字符串的一个子字符串出现了一次或更多次,则返回最后一次出现该子字符串的第一个字符的索引。若没有作为一个子字符串出现则返回−1。
str.lastIndexOf(substr)
str:一个字符串对象。
substr:搜索的子字符串。
注意:
这里子字符串由substr指定。返回该子字符串在字符串中最右端出现处的索引。最后的空字符串“”将被认为出现在下标值为this.length()方法的返回位置(即字符串的长度)。
以上4种形式的方法,都不能指定搜索的起点,下面将介绍另外几种重载方法,根据指定搜索的起始点来搜索内容。
   indexOf(int ch,int startIndex)
该方法根据指定搜索起点,搜索指定字符首次出现的位置。
语法:
indexOf(ch,startIndex)
ch:要搜索的字符。
startIndex:开始查找位置的索引。
   lastIndexOf(ch, startIndex)方法
该方法根据指定的搜索起点,搜索指定字符最后一次出现的位置。
语法:
int lastIndexOf(ch,startIndex)
ch:要搜索的字符。
startIndex:开始查找位置的索引。
   indexOf(String str, int startIndex)方法
该方法根据指定的搜索起点,搜索指定字符串首次出现的位置。
indexOf(str,startIndex)
str:要搜索的子字符串。
startIndex:开始查找位置的索引。
   lastIndexOf(String str, int startIndex)方法
该方法根据指定的搜索起点,搜索子字符串最后一次出现的位置。
lastIndexOf(str,startIndex)
str:要搜索的子字符串。
startIndex:开始查找位置的索引。
下面以实例演示字符串的各种搜索方法。例如搜索字符串中指定的字符或字符串的起始位置和终止位置。实例的实现步骤如下。
(1)创建StrSearch类,在该类中分别定义字符串变量str和整型变量rs。然后输出字符串str的各种搜索方法的返回结果到控制台中。
src\com\lzw\StrSearch.java关键代码如下:
public static void main(String[] args) {
String str="mingrikeji";               // 创建字符串
int rs=str.indexOf('i');
System.out.println("字符i首次出现的位置是:"+rs);
rs=str.lastIndexOf('i');
System.out.println("字符i最后一次出现的位置是:"+rs);
rs=str.lastIndexOf("ri");
System.out.println("字符串ri首次出现的位置是:"+rs);
rs=str.lastIndexOf("ri");
System.out.println("字符串i最后一次出现的位置是:"+rs);
rs=str.lastIndexOf('i',4);
System.out.println("从的5个字符后,字符i首次出现的位置是:"+rs);
}
src\com\lzw\StrSearch.java完整代码:
package com.lzw;
public class StrSearch {
public static void main(String[] args) {
String str="mingrikeji";
int rs=str.indexOf('i');
System.out.println("字符i首次出现的位置是:"+rs);
rs=str.lastIndexOf('i');
System.out.println("字符i最后一次出现的位置是:"+rs);
rs=str.lastIndexOf("ri");

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值