常常会用到的截取字符串substr()、substring()、slice()方法详解

下面是关于常用的字符串截取方法 substr()substring()slice() 的详细讲解。

substr() 方法

substr() 方法用于截取一个字符串的部分内容,它接收两个参数,第一个参数是截取的起始位置,第二个参数是需要截取的字符个数。当第二个参数缺省时,则表示截取到字符串末尾。下面是一个例子:

const str = "hello world";
const result = str.substr(6, 5);

console.log(result); // "world"

在上面的例子中,substr(6, 5) 表示从索引 6 开始,截取 5 个字符,因此结果为 "world"。

substring() 方法

substring() 方法用于截取一个字符串的部分内容,它接收两个参数,第一个参数是截取的起始位置,第二个参数是需要截取的字符截止位置。该方法不包括第二个参数所在的字符。当第二个参数缺省时,则表示截取到字符串末尾。下面是一个例子:

const str = "hello world";
const result = str.substring(6, 11);

console.log(result); // "world"

在上面的例子中,substring(6, 11) 表示从索引 6 开始,截取到索引 10,因此结果为 "world"。

slice() 方法

slice() 方法用于截取一个字符串的部分内容,它接收两个参数,第一个参数是截取的起始位置,第二个参数是需要截取的字符截止位置。该方法不包括第二个参数所在的字符。当第二个参数缺省时,则表示截取到字符串末尾。用法类似于 substring() 方法。下面是一个例子:

const str = "hello world";
const result = str.slice(6, 11);

console.log(result); // "world"

在上面的例子中,slice(6, 11) 表示从索引 6 开始,截取到索引 10,因此结果为 "world"。

示例

截取在字符串中的网址

假设有一个字符串,其中包含了一个网站的 URL,如何从字符串中截取到这个 URL 呢?我们可以利用正则表达式和 substr() 方法来实现:

const str = "这是一个网站的地址:https://www.example.com/index.html";
const url = str.match(/https?:\/\/[^\s]+/)[0].substr(0, str.match(/https?:\/\/[^\s]+/)[0].indexOf("/", 8));

console.log(url); // "https://www.example.com"

在上面的代码中,我们首先使用正则表达式 /https?:\/\/[^\s]+/ 来匹配字符串中的 URL,然后使用 substr() 方法来截取需要的部分。

截取数组结尾的几个元素

假设有一个数组,其中包含了若干个元素,如何截取其中结尾的几个元素呢?我们可以使用 slice() 方法和负数索引来实现:

const arr = [1, 2, 3, 4, 5];
const result = arr.slice(-2);

console.log(result); // [4, 5]

在上面的代码中,我们使用 slice(-2) 来截取数组结尾的 2 个元素。如果需要截取更多元素,只需要将参数值调整即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:常常会用到的截取字符串substr()、substring()、slice()方法详解 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • JavaScript 异步调用框架 (Part 2 – 用例设计)

    JavaScript异步调用框架 (Part 2 – 用例设计) 什么是异步调用? JavaScript是一种单线程的语言,所以同一时间只能执行一个任务。当一个任务阻塞了线程时,其他任务只能等待。由于JavaScript常用于web编程中,用户期望网页能够立即响应他们的操作。如果JavaScript因为执行某些长时间运行的函数而阻塞了线程,网页将会出现卡顿的…

    JavaScript 2023年5月28日
    00
  • JS简单循环遍历json数组的方法

    JS简单循环遍历json数组的方法,通常使用for循环来实现。下面我将详细讲解以下步骤: 1. 获取JSON数组 首先,我们需要获取JSON数组,可以通过以下方式获取: const jsonArr = [ { "name": "张三", "age": 18, "gender": …

    JavaScript 2023年5月27日
    00
  • 从axios源码角度解决bug的过程记录

    让我来详细讲解“从axios源码角度解决bug的过程记录”的完整攻略。 标题 1. 确认bug 首先,我们需要确认bug的存在,并确定bug所在的模块和源文件。可以通过debug、查看报错信息、分析代码逻辑等方式,尽可能找到bug的出现原因和位置。 2. 查看axios源码 确认bug后,需要查看axios源码,找到相关代码,进行深入分析,包括查看源代码、调…

    JavaScript 2023年5月27日
    00
  • JS实现躲避粒子小游戏

    JS实现躲避粒子小游戏的完整攻略可以分为以下几个步骤: 设计游戏画面和规则首先,需要设计出游戏的画面和规则。例如,游戏中应该有一个主角(比如小球),还应该有多个敌人(比如其他小球),主角需要躲避敌人并尽可能多地存活下来。游戏可以通过计算主角与敌人的距离来判断是否碰撞,同时也可以设置主角的生命值,当生命值为0时游戏结束。 编写HTML和CSS其次,需要按照游戏…

    JavaScript 2023年6月10日
    00
  • 解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法

    当我们使用JS的setTimeout函数在火狐浏览器下出现不兼容失效不执行的问题时,可以使用以下两种方法进行解决: 方法一:使用匿名函数替代字符串函数 在setTimeout函数中传入的字符串函数在Chrome和其他浏览器中可以正常执行,但是在火狐浏览器中则可能因为严格模式下的限制而不能正常工作。 // 无法在火狐浏览器中正常执行 setTimeout(‘a…

    JavaScript 2023年6月11日
    00
  • python获取引用对象的个数方式

    Python 中获取引用对象的个数有多种方式,下面我将详细介绍这些方法,并提供示例方便理解。 使用sys.getrefcount方法 sys.getrefcount 是 Python 内置的一个方法,它可以用来获取一个对象的引用计数。 该方法的语法如下: import sys refCount = sys.getrefcount(object) 其中 obj…

    JavaScript 2023年6月11日
    00
  • 详解json串反转义(消除反斜杠)

    下面我将详细讲解如何反转义JSON串中的反斜杠,从而去除JSON中的转义字符。 什么是JSON转义字符 JSON中,所有的控制字符和非ASCII字符都必须进行转义。转义字符是由反斜杠加上一个字符组成的,比如\”表示双引号,\\表示反斜杠,\n表示换行符。这些转义字符可以让一个字符变得特别,这也是JSON可以描述Unicode字符集的原因。 为什么需要反转义J…

    JavaScript 2023年6月11日
    00
  • Node.js 和 Python之间该选择哪个?

    当你需要选择一种服务器端开发语言时,Node.js 和 Python 都是不错的选择。它们都有广泛的应用和生态系统,但它们之间也存在一些区别。 1. Node.js vs Python:概述 Node.js Node.js 是一种使用 JavaScript 编写的服务器端运行环境。它采用事件驱动、非阻塞 I/O 模型,使得它非常适合构建高性能的 Web 应用…

    JavaScript 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部