常常会用到的截取字符串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基于面向对象之继承

    详解JavaScript基于面向对象之继承 概述 继承是面向对象编程中非常重要的一个概念,在JavaScript中也有着广泛的运用。继承可以使代码更加简洁、优雅,使得实现代码复用更加方便。本文将详细讲解JavaScript基于面向对象之继承的完整攻略。 继承的概念 继承就是子类通过复用父类的属性和方法,使得子类可以从父类中获得所有的非私有成员。在JavaSc…

    JavaScript 2023年5月27日
    00
  • js中如何对url进行编码和解码

    在 JavaScript 中,有两种方式可以对 URL 进行编码和解码,分别是 encodeURI() 和 encodeURIComponent()。 encodeURI() encodeURI() 方法用于将 URI (Uniform Resource Identifier) 进行编码,但是不会对一些特殊字符 (;,/?:@&=+$#) 进行编码。…

    JavaScript 2023年5月20日
    00
  • JavaScript(js)设置默认输入焦点(focus)

    关于如何设置默认输入焦点,我们可以采用js实现。具体步骤如下: 1. 通过js获取输入框元素 要设置默认输入焦点,首先要获取到目标输入框的DOM元素。可以通过js中的document.getElementById()或document.querySelector()方法获取到输入框元素并保存到变量中,具体代码如下: // 使用getElementById方法…

    JavaScript 2023年6月11日
    00
  • JS按钮连击和接口调用频率限制防止客户爆仓

    JS按钮连击和接口调用频率限制防止客户爆仓是前端开发中非常重要的两个问题,此处进行详细讲解。 JS按钮连击 在网页中,用户经常会通过点击按钮等界面元素执行某些操作。如果用户在短时间内多次连续点击同一个按钮,就会引发“按钮连击”问题。如何避免JS按钮连击问题呢?下面介绍几种常用的方法: 1. 禁用按钮 可以在按钮第一次点击时禁用按钮,在处理完当前请求后再重新启…

    JavaScript 2023年6月10日
    00
  • js特殊字符过滤的示例代码

    JS特殊字符过滤是一种常见的前端技术,其目的是为了防止恶意注入脚本,保护网站安全性。下面,我们将介绍几种常见的JS特殊字符过滤代码。 基于字符编码的过滤 字符编码过滤的基本原理是将所有可能的JS特殊字符进行相应的编码,在输出时将编码重新转换为原有字符。常用的字符编码有HTML的&和”,URL的%20等。 以下是一个简单的示例: function ht…

    JavaScript 2023年6月10日
    00
  • 深浅拷贝,温故知新

    1、深拷贝 1.1、概念 对象的深拷贝是指其属性与其拷贝的源对象的属性不共享相同的引用(指向相同的底层值)的副本。 因此,当你更改源或副本时,可以确保不会导致其他对象也发生更改;也就是说,你不会无意中对源或副本造成意料之外的更改。 在深拷贝中,源和副本是完全独立的。深拷贝与其源对象不共享引用,所以对深拷贝所做的任何更改都不会影响源对象。 1.2、实现方式: …

    JavaScript 2023年5月11日
    00
  • js实现接收表单的值并将值拼在表单action后面的方法

    实现接收表单的值并将值拼在表单action后面的方法,可以通过以下步骤来完成: 使用 HTML 表单标签创建表单,并指定表单的 action 和 method 属性以及 input 标签来定义表单项。 <form action="submit.php" method="post"> <label fo…

    JavaScript 2023年6月10日
    00
  • JavaScript中filter的用法实例分析

    我们来详细讲解一下“JavaScript中filter的用法实例分析”。 什么是filter? 在JavaScript中,filter()是Array对象的一个方法,它用于过滤数组中的元素,根据指定的条件筛选出符合条件的元素组成一个新数组并返回,原数组不会改变。 filter()方法接收一个函数作为参数,这个函数会被逐个考察数组中的元素,只有在符合特定条件时…

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