字符串常用方法第一弹

简介: 字符串常用方法在这里,我们讲述一下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
相关文章
|
定位技术
高分GF与环境HJ系列国产卫星遥感影像数据图像免费批量下载方法
高分GF与环境HJ系列国产卫星遥感影像数据图像免费批量下载方法
485 1
几种时频分析方法在 VFTO 频谱分析中的应用
几种时频分析方法在 VFTO 频谱分析中的应用
167 1
|
机器学习/深度学习 算法 数据可视化
R语言改进关联规则挖掘Apriori在超市销售数据可视化
R语言改进关联规则挖掘Apriori在超市销售数据可视化
|
机器学习/深度学习 分布式计算 运维
通过客户端使用MaxCompute Quick Start
MaxCompute(ODPS)是适用于数据分析场景的企业级SaaS(Software as a Service)模式云数据仓库,以Serverless架构提供快速、全托管的在线数据仓库服务,消除了传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您可以经济并高效地分析处理海量数据,有效降低企业成本,并保障数据安全。可基于DataWorks实现一站式的数据同步、业务流程设计、数据开发、管理和运维功能。也可基于机器学习平台的算法组件实现对MaxCompute数据进行模型训练等操作。本文将演示通过客户端和Datawork快速使用MaxCompute做数据的导入导出操作以供参考。
1104 0
通过客户端使用MaxCompute Quick Start
|
弹性计算 缓存 网络协议
测试:阿里云U1实例(通用算力型实例)服务器详细介绍
性能测试:阿里云U1实例(通用算力型实例)服务器详细介绍
461 0
|
5天前
|
云安全 人工智能 自然语言处理
|
9天前
|
人工智能 Java API
Java 正式进入 Agentic AI 时代:Spring AI Alibaba 1.1 发布背后的技术演进
Spring AI Alibaba 1.1 正式发布,提供极简方式构建企业级AI智能体。基于ReactAgent核心,支持多智能体协作、上下文工程与生产级管控,助力开发者快速打造可靠、可扩展的智能应用。
850 26
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
435 4