0

0

JS字符串学习之将字符串分割成子串并传给数组

青灯夜游

青灯夜游

发布时间:2021-08-25 15:53:06

|

4987人浏览过

|

来源于php中文网

原创

在之前的文章《js字符串学习之怎么统一所有字符的大小写》中,我们介绍了统一字符串的大小写的两种方法,有需要的朋友可以学习了解一下~

而本文的主要内容是“分割字符串,变成多个更小的子串,并将这些子串传给数组,作为数组元素”;简单来说就是“字符串转为数组”。

那么这样怎么操作呢?我们可以使用JavaScript内置的函数split()

string.split(separator,limit)用于把一个字符串分割成字符串数组;接受两个可省略的参数separator(分割符或正则表达式,指定分割位置)和limit(指定返回的数组的最大长度)

可省略的参数separator有多种取值情况,不同的情况返回的数组也不一样:

1、split()方法不接受参数:

var str="How are you doing today?";
var arr=str.split();
console.log(arr);

当参数为空时,则该方法会把整个字符串作为一个元素的数组返回(此时数组长度为1)。因此输出结果为:

1.png

2、split()方法的separator参数为空字符串

var str="How are you doing today?";
var arr=str.split('');
console.log(arr);

当separator参数为空字符串时,那么该方法会按照单个字符进行分割,每个字符之间都会被分割,则会返回一个包含所有单个字符的字符数组(此时数组长度为字符串的长度)。因此输出结果为:

2.png

3、split()方法的separator参数为空格' '

var str="How are you doing today?";
var arr=str.split(' ');
console.log(arr);

当separator参数为空格时,那么该方法会按照空格来进行分割,将字符串中的每个单词都分割出来作为数组元素。因此输出结果为:

3.png

4、split()方法的separator参数为正则表达式

Krea AI
Krea AI

多功能的一站式AI图像生成和编辑平台

下载
var str= "a2b3c4d5e678f12g";
var arr=str.split(/\d+/);  //把以匹配的数字为分隔符来切分字符串
console.log(arr);

当separator参数为正则表达式,则该方法能够以匹配文本作为分隔符进行切分。例如上例中就是匹配0~9的数字,将数字作为分割符,因此输出结果为:

5.png

  • 如果正则表达式匹配的文本位于字符串的边沿,则 split() 方法也执行切分操作,且为数组添加一个空数组。

var str= "122a2b3c4d5e678f12g456";
var arr=str.split(/\d+/);  //把以匹配的数字为分隔符来切分字符串
console.log(arr);

6.png

  • 如果在字符串中指定的分隔符没有找到,则返回一个包含整个字符串的数组。

var str= "abcdefg";
var arr=str.split(/\d+/);  //把以匹配的数字为分隔符来切分字符串
console.log(arr);

7.png

指定包含的子串数目

如果分割的子串太多,只是想要获取前几个子串,那么可以第二个参数limit

第二个参数limit可指定返回数组的最大长度,即可设置包含的子串数目。如果设置了该参数,则返回的数组长度不会大于这个参数指定的值:

var str="How are you doing today?";
var arr=str.split(' ',3);
console.log(arr);

4.png

参数limit不接受负值,如果设置了负值,则该值会被会略掉。

var str="How are you doing today?";
var arr=str.split(' ',-3);
console.log(arr);

8.png

好了,就说到这里了,有需要的可以看:javascript视频教程

相关专题

更多
C++ 高级模板编程与元编程
C++ 高级模板编程与元编程

本专题深入讲解 C++ 中的高级模板编程与元编程技术,涵盖模板特化、SFINAE、模板递归、类型萃取、编译时常量与计算、C++17 的折叠表达式与变长模板参数等。通过多个实际示例,帮助开发者掌握 如何利用 C++ 模板机制编写高效、可扩展的通用代码,并提升代码的灵活性与性能。

10

2026.01.23

php远程文件教程合集
php远程文件教程合集

本专题整合了php远程文件相关教程,阅读专题下面的文章了解更多详细内容。

29

2026.01.22

PHP后端开发相关内容汇总
PHP后端开发相关内容汇总

本专题整合了PHP后端开发相关内容,阅读专题下面的文章了解更多详细内容。

21

2026.01.22

php会话教程合集
php会话教程合集

本专题整合了php会话教程相关合集,阅读专题下面的文章了解更多详细内容。

21

2026.01.22

宝塔PHP8.4相关教程汇总
宝塔PHP8.4相关教程汇总

本专题整合了宝塔PHP8.4相关教程,阅读专题下面的文章了解更多详细内容。

13

2026.01.22

PHP特殊符号教程合集
PHP特殊符号教程合集

本专题整合了PHP特殊符号相关处理方法,阅读专题下面的文章了解更多详细内容。

11

2026.01.22

PHP探针相关教程合集
PHP探针相关教程合集

本专题整合了PHP探针相关教程,阅读专题下面的文章了解更多详细内容。

8

2026.01.22

菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

55

2026.01.22

Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
React 教程
React 教程

共58课时 | 4万人学习

TypeScript 教程
TypeScript 教程

共19课时 | 2.4万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号