提取子字符串的方法汇总

在 JavaScript 中,有多种方法可以提取子字符串。以下是常见的方法汇总:

1. substring

substring 方法用于提取字符串的某个部分,并返回一个新的字符串。它接受两个参数:起始索引和结束索引(不包括结束索引)。

javascript 复制代码
const str = "Hello, world!";
const result = str.substring(7, 12);
console.log(result); // "world"

2. slice

slice 方法与 substring 类似,但它可以接受负数索引,表示从字符串末尾开始计算。

javascript 复制代码
const str = "Hello, world!";
const result = str.slice(7, 12);
console.log(result); // "world"

const negativeResult = str.slice(-6, -1);
console.log(negativeResult); // "world"

3. substr

substr 方法用于从起始索引开始提取指定长度的子字符串。它接受两个参数:起始索引和长度。

javascript 复制代码
const str = "Hello, world!";
const result = str.substr(7, 5);
console.log(result); // "world"

4. split

split 方法主要用于分隔字符串,但它也可以用于提取子字符串。

javascript 复制代码
const str = "Hello, world!";
const result = str.split(" ")[1];
console.log(result); // "world!"

5. match

match 方法与正则表达式结合使用,可以提取符合模式的子字符串。

javascript 复制代码
const str = "Hello, world!";
const result = str.match(/world/);
console.log(result[0]); // "world"

6. replace with a function

replace 方法可以与正则表达式和回调函数结合使用,提取子字符串。(参考: replace的详解和常用的案例

javascript 复制代码
const str = "Hello, world!";
const result = str.replace(/(world)/, (match) => match);
console.log(result); // "Hello, world!"

示例代码

以下是一个包含上述所有方法的示例代码:

javascript 复制代码
const str = "Hello, world!";

// 使用 substring 方法
const substringResult = str.substring(7, 12);
console.log(substringResult); // "world"

// 使用 slice 方法
const sliceResult = str.slice(7, 12);
console.log(sliceResult); // "world"

const negativeSliceResult = str.slice(-6, -1);
console.log(negativeSliceResult); // "world"

// 使用 substr 方法
const substrResult = str.substr(7, 5);
console.log(substrResult); // "world"

// 使用 split 方法
const splitResult = str.split(" ")[1];
console.log(splitResult); // "world!"

// 使用 match 方法
const matchResult = str.match(/world/);
console.log(matchResult[0]); // "world"

// 使用 replace 方法
const replaceResult = str.replace(/(world)/, (match) => match);
console.log(replaceResult); // "Hello, world!"

这些方法可以根据具体需求选择使用。slice 和 substring 方法是最常用的提取子字符串的方法,而 substr 方法在某些情况下也很有用。split、match 和 replace 方法提供了更强大的字符串处理能力。

相关推荐
sen_shan1 分钟前
Vue3+Vite+TypeScript+Element Plus开发-04.静态菜单设计
前端·javascript·typescript·vue3·element·element plus·vue 动态菜单
巷北夜未央2 分钟前
数据结构之二叉树Python版
开发语言·数据结构·python
旧识君25 分钟前
移动端1px终极解决方案:Sass混合宏工程化实践
开发语言·前端·javascript·前端框架·less·sass·scss
郝YH是人间理想41 分钟前
OpenCV基础——傅里叶变换、角点检测
开发语言·图像处理·人工智能·python·opencv·计算机视觉
Tiger Z44 分钟前
R 语言科研绘图第 36 期 --- 饼状图-基础
开发语言·程序人生·r语言·贴图
ElasticPDF-新国产PDF编辑器1 小时前
Angular use pdf.js and Elasticpdf tutorial
javascript·pdf·angular.js
揣晓丹1 小时前
JAVA实战开源项目:校园失物招领系统(Vue+SpringBoot) 附源码
java·开发语言·vue.js·spring boot·开源
吃没吃1 小时前
vue2.6-源码学习-Vue 核心入口文件分析
前端
Carlos_sam1 小时前
Openlayers:海量图形渲染之图片渲染
前端·javascript
XH2761 小时前
Android Retrofit用法详解
前端