第2关:substring()方法与indexof()方法的使用 - 姓名查找
时间: 2023-04-28 11:00:53 浏览: 150
substring()方法和indexof()方法是JavaScript中常用的字符串处理方法。
substring()方法可以从一个字符串中截取指定长度的字符串,语法如下:
string.substring(start, end)
其中,start是截取的起始位置,end是截取的终止位置,截取的字符串包含start位置的字符,但不包含end位置的字符。
例如:
var str = "Hello World";
var sub = str.substring(0, 5);
console.log(sub); // 输出:Hello
indexof()方法可以在一个字符串中查找指定字符串的位置,语法如下:
string.indexof(searchvalue, start)
其中,searchvalue是要查找的字符串,start是查找的起始位置,如果找到了,则返回该字符串的位置,否则返回-1。
例如:
var str = "Hello World";
var index = str.indexof("l", 3);
console.log(index); // 输出:9
通过这两个方法,我们可以很方便地实现姓名查找的功能。例如,我们可以把姓名列表保存在一个字符串中,然后通过substring()方法截取每个姓名,再通过indexof()方法查找指定的姓名。
相关问题
substring方法与indexof
substring方法和indexOf方法都是JavaScript中的字符串方法。
substring方法用于从一个字符串中提取指定位置的子字符串。它接受两个参数,第一个参数是起始位置,第二个参数是结束位置(可选)。如果只有一个参数,则从该位置开始提取到字符串末尾。
indexOf方法用于查找一个字符串在另一个字符串中第一次出现的位置。它接受一个参数,即要查找的字符串。如果找到了,返回该字符串在原字符串中的位置;如果没有找到,返回-1。
这两个方法在字符串处理中非常常用,可以帮助我们快速地获取所需的信息。
编写一个程序,统计你的学号字符串在一段字符串(可自习定义)中出现的次数。要求用String类的常用方法来计算出现的次数。 例如:张三同学学号为123456,则统计“123456”在“namezhangsan123456idnumber123456and123”出现的次数为2。 实现思路: (1)实现本程序需要先定义两个字符串,一个子串,一个检索串。 (2)要查找子串在总串中出现的次数,可以先使用String类的contain()方法,判断总串中是否包含子串,如果不包含,那么不用计算,出现的次数一定为0。 (3)如果包含了,那么再具体计算出现的次数。使用String类的indexOf()方法可以获取子串在总串中第一次出现的索引。获取到之后,再在剩余字串(该索引加上子串长度的位置处)继续查找子串(可以通过String类的subString()方法将整串的剩余部分截取出来,然后在剩余整串中从头查找子串)。依次类推,通过循环完成查找,直到找不到子串为止,此时indexOf()方法的返回值为-1. (4)定义一个计数器,记录出现的次数,在循环中每查到一次子串,则计数器加1.
好的,以下是实现该程序的Java代码:
```
public class CountSubstring {
public static void main(String[] args) {
String str = "namezhangsan123456idnumber123456and123";
String subStr = "123456";
int count = 0;
int index = 0;
while ((index = str.indexOf(subStr, index)) != -1) {
count++;
index += subStr.length();
}
System.out.println(subStr + "出现的次数为:" + count);
}
}
```
这个程序中,我们定义了一个总串 `str` 和一个子串 `subStr`,通过 `indexOf()` 方法查找子串在总串中出现的次数。在循环中,我们通过 `indexOf()` 方法获取子串在总串中第一次出现的索引,然后将索引加上子串长度得到下一次查找的位置。如果查找不到子串,则 `indexOf()` 方法返回 -1,循环退出。最终输出子串出现的次数。
阅读全文