正则表达式的 JavaScript String.Split() 的使用

321 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第5天,点击查看活动详情

split() 方法用于将字符串拆分为子字符串数组,并返回新数组。

提示:如果使用空字符串(“”)作为分隔符,则在每个字符之间拆分字符串。

注意split() 方法不会更改原始字符串。

在 JavaScript 中,如何使用 RegEx 匹配字符中的模式?如何与.split()string 方法结合使用?

字符串构造函数有很多有用的方法其中之一是split()。你可以使用此方法使用断点将字符串拆分为子字符串数组。

以下是它的常用用法:

const string = "How is everything going?"

const breakpoint = " "

const splitted = string.split(breakpoint);

// [ 'How', 'is', 'everything', 'going?' ]

使用空格 (" ") 作为断点,该split方法在这些断点处拆分字符串。

这里的断点是固定字符。如果要根据模式进行拆分怎么办?像数字字符或符号空间?然后你可以使用split带有正则表达式的方法来实现这一点。

如何在 JavaScript 中将 RegEx 与 .split 一起使用

split方法接受一个参数——断点。此断点确定应该发生拆分的点。此断点可以是字符串或正则表达式模式。

这是使用正则表达式模式的示例:

const string = "How is $everything g$oing?"

const breakpoint = /$e|$o/

const splitted = string.split(breakpoint)

// [ 'How is ', 'verything g', 'ing?' ]

正则表达式模式匹配美元符号后跟字母“e”($e)或美元符号后跟字母 o($o)。

split 方法使用匹配此模式的字符作为断点,如你所见,“everything”中的“everything”中的“e”和“going”中的“oing”中的“o”作为断点将字符串拆分为子串。

你不需要g在正则表达式中应用全局标志,因为 split 方法已经将所有出现的正则表达式模式作为断点查找。

结论

你不仅必须使用文字字符串通过该split方法将字符串拆分为数组。你还可以使用正则表达式作为匹配更多字符的断点来拆分字符串。