使用JavaScript分隔符拆分字符串
我正在编写一个示例代码,通过在 javascript 中指定分隔符来拆分字符串。通过在“split()”的参数中指定分隔符,可以进行拆分。您还可以使用正则表达式指定多个字符进行拆分。
按分隔符拆分字符串
可以通过使用“split()”指定要拆分的字符串来拆分。
split('分隔符',分割数) ※返回值为数组。
实例试着用“_”分割。
const str = 'a_b_c_d_e'; const result = str.split('_'); console.log(result); // ['a', 'b', 'c', 'd', 'e']
如果没有指定分隔符,它将以 1 个字符为单位进行拆分。
const str = 'a_b_c_d_e'; const result = str.split(''); console.log(result); // ['a', '_', 'b', '_', 'c', '_', 'd', '_', 'e']
如果指定分割数,则仅获取指定的数。
const str = 'a_b_c_d_e'; const result = str.split('_', 2); console.log(result); // ['a', 'b']
如果字符串的开头有要拆分的字符串,则首先是“空字符”。
const str = '_a_b_c_d_e'; const result = str.split('_'); console.log(result); // ['', 'a', 'b', 'c', 'd', 'e']
如果末尾有分隔符,则结尾将是“空字符”。
const str = 'a_b_c_d_e_'; const result = str.split('_'); console.log(result); // ['a', 'b', 'c', 'd', 'e', '']
此外,如果只有一个字符要拆分,则会生成一个包含两个“空字符”的数组。
const str = '_'; const result = str.split('_'); console.log(result); // ['', '']
当用于空字符串时,会生成一个“空字符”数组。
const str = ''; const result = str.split('_'); console.log(result); // ['']
将其用于“null”或“undefined”将导致错误。
let str = undefined; console.log(str.split()); // Uncaught TypeError: Cannot read properties of undefined (reading 'split')
可以通过在使用之前确定它是否是字符串来避免错误。
let str = null; if(typeof str === 'string'){ console.log( str.split() ) }
“split”在把名字分割成姓与名的时候也很方便。
const name = '张 三'; const [first, last] = name.split(' '); console.log(first); // 张 console.log(last); // 三 const name = '张 三 25 北京'; const [first, last, age] = name.split(' '); console.log(first); // 张 console.log(last); // 三 console.log(age); // 25
常用表达
由于“split”也可以使用正则表达式,因此也可以使用多个分隔符进行拆分。
const str = "123,45|67,890"; const result = str.split(/[,|]/); console.log(result); // ['123', '45', '67', '890']
另外,在正则表达式中使用“(?=模式)”也可以包含分隔文字进行分割。
※这里将“数值”按模式进行分割。
const str = "1aaa2bbb3ccc4ddd5eee"; const result = str.split(/(?=\d)/); console.log(result); // ['1aaa', '2bbb', '3ccc', '4ddd', '5eee']
顺便说一句,如果位数不同,可以使用“/(?<!\d)(?=\d+)/”。
const str = "1aaa22bbb333ccc4444ddd55555eee"; const result = str.split(/(?<!\d)(?=\d+)/); console.log(result); // ['1aaa', '22bbb', '333ccc', '4444ddd', '55555eee']
如果要在后面留下分隔符,可以使用(?<=模式)。
const str = "今天是、晴天。"; const result = str.split(/(?<=[。、])/); console.log(result); // ['今天是、', '晴天。']
拆分后转回字符串
如果要在拆分后将其转换回字符串,请使用“join”,它允许您将数组连接到具有指定分隔符的字符串。
const str = 'a_b_c_d_e'; const result = str.split('_').join(''); console.log(result); // abcde console.log(typeof result); // string
您还可以指定要返回的分隔符。
const str = 'a_b_c_d_e'; const result = str.split('_').join('-'); console.log(result); // a-b-c-d-e console.log(typeof result); // string
拆分和排序
结合“sort”也可以对字符串进行排序。
const str = 'c_e_a_d_b'; const result = str.split('_').sort(); console.log(result); // ['a', 'b', 'c', 'd', 'e'] console.log(result.join('_')); // a_b_c_d_e
按位置拆分字符串
指定位置进行分割时使用“substring”。
字符串.substring( 起始位置, 结束位置 );
实例代码
let str = 'abcde'; console.log( str.substring(0, 3) ); // abc console.log( str.substring(1, 3) ); // bc console.log( str.substring(1, 10) ); // bcde console.log( str.substring(-1, 3) ); // abc ← 如果指定负数,就当作0
本文来源:词雅网
本文地址:https://www.ciyawang.com/javascript-split-string.html
本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。
相关推荐
-
如何使用JavaScript跳转到另一个页面
使用window.location属性跳转到另一个页面。让我们看一下基础知识和一些实际示例。关于 window.location 属性window.location 属性返回一个 Location 对...
-
JavaScript编程语言中的变量和声明:存储和重复利用数据的关键
编程语言中有一个功能叫做变量,它可以用于存储各种数据,并在需要时进行重复利用。本文将介绍变量的作用和变量声明。在编写程序时,对变量的处理是必要的知识,因此让我们充分理解什么是变量。变量变量是指为不同类...
-
如何使用length函数在JavaScript中计算字符串长度
在JavaScript中,字符串是一种常见的数据类型。当我们处理字符串时,经常需要知道字符串的长度。JavaScript提供了一个内置函数——length函数,可以用来计算字符串的长度。length函...
-
使用JavaScript获取selectbox中的所有值
我正在编写示例代码以获取 javascript 中选择框中的所有值。使用目标选择框的属性“options”将其获取为“HTMLCollection”,然后将其排列并进行循环处理。获取所有值要获取选择框...
-
使用JavaScript确定日期和时间在多少小时内
在 javascript 中,我编写了一个示例代码来确定日期和时间是多少小时。可以通过获取日期和时间差的绝对值来确定。 确定日期和时间在多少小时内...
-
获取JavaScript数组的偶数和奇数元素
我正在编写示例代码以在 javascript 中获取数组的偶数和奇数元素。我认为最简单的方法是使用“filter”来确定索引号是偶数还是奇数。 获取偶数/奇数元素...
-
使用JavaScript代码实现URL获取#号后的值
在javascript中,我编写了一个示例代码以从任何URL调用URL片段的“#”之后获取值。 使用“lastIndexOf”和“slice”获取它。...
-
JavaScript错误“Uncaught TypeError: xxx.replace is not a function”的解决方法
javascript报错“Uncaught TypeError: xxx.replace is not a function”的原因及解决方法。 在字符串以外的对象上使用...
-
使用JavaScript代码判断指定日期是否在多少天之内
编写一个示例代码来确定日期在javascript中的天数。可以通过计算从UTC时间1970年1月1日开始的经过时间的差值换算成天数,求出绝对值来判断。...
-
使用JavaScript检查浏览器当前选项卡是否被切换
在javascript中,我写了一个示例代码,用于判断当前选项卡是否已经切换。 用“visibilitychange”获取页面显示状态的事件,用“visibilitySt...