如何使用 String.prototype.split() 方法分割字符串?

推荐答案

-- -------------------- ---- -------
----- --- - ----------------------

-- -- ---------
----- ---- - ---------------
------------------ -- --- --------- --------- ---------

-- -- ---------
----- ---- - ------ ------ --------
----- ---- - ------------ ---
------------------ -- --- --------- --------- ---------

-- -- ------------------
----- ---- - ------
----- ---- - ---------------
------------------ -- --- ----- ---- ----

-- -- ------------------
----- ---- - ----------------------------
----- ---- - --------------- ---
------------------ -- --- --------- ---------

-- -- ---------
----- ---- - ----------------------
----- ---- - ----------------
----------------- -- --- --------- --------- ---------


----- ---- - -----------------------
----- ---- - -----------------
----------------- -- ------------ --------- --------- ---

本题详细解读

String.prototype.split() 方法是 JavaScript 中用于分割字符串的强大工具。它接受两个可选参数:

  1. separator (分隔符): 指定在哪里分割字符串。它可以是:

    • 一个字符串:例如 ",", " ", "---"。
    • 一个正则表达式:例如 /,/, /\d/, /[,| ]/
    • 如果省略或者传入undefined,则返回包含原字符串的数组。
  2. limit (限制): 一个可选的整数,限制返回数组的元素个数。 如果设置,则返回的数组包含不超过 limit 个元素,剩余的字符串将不被分割。

工作原理:

split() 方法会在字符串中寻找 separator,找到后,将字符串分割成多个子字符串,这些子字符串被放入一个数组中返回。

关键点:

  • 不修改原字符串: split() 方法不会修改原字符串,而是返回一个新的数组。
  • 空字符串作为分隔符: 如果 separator 是空字符串 "",则字符串会被分割成单个字符的数组。
  • 正则表达式分隔符: 使用正则表达式作为 separator 可以实现更复杂的分割逻辑,例如使用多种分隔符或者处理不规则的格式。
  • limit 参数: limit 参数可以用来控制分割的次数,从而获得前几个分割后的子字符串。
  • 分割符被移除: 返回的数组中不包含分割符,除非在正则表达式中用捕获括号捕获。
  • 没有找到分隔符: 如果没有找到分隔符,则会返回包含原字符串的数组

示例解析:

  1. 示例 1: 使用逗号,作为分隔符,将字符串分割成包含 apple, banana, orange 的数组。
  2. 示例 2: 使用空格 作为分隔符, 将字符串分割成包含 apple, banana, orange 的数组。
  3. 示例 3: 使用空字符串 "" 作为分隔符,将字符串分割成单个字符的数组 ["a", "b", "c"]
  4. 示例 4: 使用逗号,作为分隔符,并且使用limit参数限制返回数组的长度为 2,结果返回 ["apple", "banana"]
  5. 示例 5: 使用正则表达式 /,/ 作为分隔符, 将字符串分割成包含 apple, banana, orange 的数组。
  6. 示例 6: 使用正则表达式 /\d/ 作为分隔符, 将字符串分割成不包含数字的数组, 注意分割符是被移除的。
纠错
反馈