字符串常用方法第一弹

简介: 字符串常用方法在这里,我们讲述一下string的常见方法,在我们时机开发中,字符串的使用频率还是很高的,所以这些常见的方法我们需要记住并且熟练运用。下面我们就来了解字符串有哪些常用的方法吧!

字符串常用方法

在这里,我们讲述一下string的常见方法,在我们时机开发中,字符串的使用频率还是很高的,所以这些常见的方法我们需要记住并且熟练运用。下面我们就来了解字符串有哪些常用的方法吧!

注意:

由于字符串的不可变性,所以字符串的所有方法都是返回一个新的字符串,而不是修改原来的字符串。(原来的字符串不变)

查找字符串

indexOf()

value = str.indexOf('要查找的字符串',[查找开始的位置(索引)]);
复制代码

这个方式是从字符串索引号[0]开始向后面查找,如果找到了,就返回第一个字符的索引号(不会继续向后查找),如果没有找到,就返回-1。

这个方法后面那个查找开始位置为可选参数,如果我们不填写,默认是从索引号[0]开始查找。

那么:

  • 如果查找结果返回的是0,说明我们要查找的参数位于字符串的开头。
  • 如果查找结果返回的是-1,说明我们要查找的参数在字符串里面不存在。

栗子时间:

var str = 'hello world';
console.log(str.indexOf('hello')); // 0
console.log(str.indexOf('world')); // 6
console.log(str.indexOf('o',5)); // 7
console.log(str.indexOf('world',7)); // -1
复制代码

lastIndexOf()

value = str.lastIndexOf('要查找的字符串',[查找开始的位置(索引)]);
复制代码

这个方法是从字符串的最后一个字符开始向前面查找,如果找到了,就返回第一个字符的索引号(不会继续向前查找),如果没有找到,就返回-1。

这个方法后面那个查找开始位置为可选参数,如果我们不填写,默认是从索引号[0]开始查找。

那么:

  • 如果查找结果返回的是0,说明我们要查找的参数位于字符串的开头。
  • 如果查找结果返回的是-1,说明我们要查找的参数在字符串里面不存在。

栗子时间:

var str = 'hello world';
console.log(str.lastIndexOf('hello')); // 0
console.log(str.lastIndexOf('world')); // 6
console.log(str.lastIndexOf('o',6)); // 4
console.log(str.lastIndexOf('world', 7)); // 6
复制代码

进阶

  • 通过前面的学习,我们知道了indexOf()lastIndexOf()这两个方法,那么我们就可以通过这两个方法来判断一个字符串是否包含另一个字符串了。
    var str = 'hello world'; if(str.indexOf('hello') != -1){ console.log('包含'); }else{ console.log('不包含'); }
  • indexOf()lastIndexOf()有一个缺点:它只能返回查找到的第一个字符的索引号,如果我们要查找的字符串在字符串里面出现了多次,那么我们就无法得到它的索引号了。那么我们就可以通过循环的方法来解决这个问题。
    var str = 'hello world oo'; var q = str.indexOf('o'); while (q <= str.length) { if (str.indexOf('o', q) != -1) { q = str.indexOf('o', q); console.log('o' + q); // 4 } else { break; } q++; }

search()

value = str.search('要查找的字符串');
复制代码

这个方法是用来查找字符串里面是否包含另一个字符串的,如果找到了,就返回第一个字符的索引号(不会继续向后查找),如果没有找到,就返回-1。

include()

value = str.include('要查找的字符串',[position]);
复制代码

这个方法是用来查找字符串里面是否包含另一个字符串的,如果找到了,就返回true,如果没有找到,就返回false。

参数中的position,代表我们检索开始的位置,如果不填写,默认是从索引号[0]开始检索;如果指定就从指定位置开始检索。

let str = 'hello world';
console.log(str.include('hello')); // true
console.log(str.include('world')); // true
console.log(str.include('hello',1)); // false
console.log(str.include('world',7)); // false
复制代码

startsWith()&endsWith()

value = str.startsWith('要查找的字符串',[position]);
value = str.endsWith('要查找的字符串',[position]);
复制代码

这两个方法是用来判断字符串是否以指定的字符串开头或结尾的,如果是,就返回true,如果不是,就返回false。

注意:

这个两个方法中的position参数意义是不同的:

  • startsWith()中的position代表我们检索开始的位置,如果不填写,默认是从索引号[0]开始检索,直到字符串末尾;如果指定就从指定位置开始检索,直到字符串末尾。[position,字符串末尾]
  • endsWith()中的position代表我们检索结束的位置,如果不填写,默认是从字符串末尾开始检索,直到索引号[0];如果指定就从指定位置开始检索,直到索引号[0]。[0,position)
• let str = 'hello world'; console.log(str.startsWith('hello')); // true console.log(str.startsWith('world')); // false
console.log(str.endsWith('hello')); // false console.log(str.endsWith('world')); // true
console.log(str.startsWith('hello',1)); // false console.log(str.startsWith('world',7)); // false
console.log(str.endsWith('hello',1)); // false console.log(str.endsWith('world',7)); // false
相关文章
|
6月前
|
Java
Java集合类ArrayList应用 | 如何在字符串s1中删除有在字符串s2出现的字符?
这是一个关于Java编程面试题的摘要,题目要求从字符串s1中删除s2中存在的字符。解题思路包括使用ArrayList或StringBuilder实现。ArrayList实现时,遍历s1,如果字符不在s2中,则添加到ArrayList;StringBuilder实现有两种方法,一是新建StringBuilder并追加s1,然后遍历删除s2中的字符,二是直接在原地修改s1的StringBuilder对象。代码示例中展示了这些方法。
56 3
|
6月前
|
Java
JAVA字符串的基本操作
JAVA字符串的基本操作
80 2
|
6月前
字符串常用方法
字符串常用方法
|
6月前
|
Java 索引
Java实现字符串倒序打印
Java实现字符串倒序打印
63 0
|
11月前
|
BI C# 数据安全/隐私保护
C# 字符串常用方法的详细讲解和应用
C# 字符串常用方法的详细讲解和应用
|
JavaScript
常用的数组(字符串)方法有哪些?(一)
1.pop:末位删除,即删除数组的最后一项,返回值是被删除项。 2.shift:首位删除,即删除数组的第一项,返回值是被删除项。 3.splice:指定下标删除元素,返回被删除的元素。第一个参数是从下标几开始删除,第二个参数是删除几个,第三个参数是要插入的元素。splice方法是会改变原数组的。删除功能用的比较多,我个人更喜欢用filter来变相实现删除,splice是会改变原数组的,而filter不会
常用的数组(字符串)方法有哪些?(二)
concat:合并数组或者字符串,concat在项目中用的还是比较多的,最经典的就是一个表格数据是有两个或者三个数组组成的时候会用到,watch监听数组和concat结合使用。下期做一个例子。
常用的数组(字符串)方法有哪些?(三)
some:判断数组中有没有符合条件的元素,一个符合的都没有返回false,有一个就是true。
|
C++ 容器
【C++】字符串遍历的三种方式
【C++】字符串遍历的三种方式
java字符串反转(7种方法)
用stringBuffer或者stringBuilder自带的reverse方法
2367 0