换行字符串

JavaScriptJavaScriptBeginner
立即练习

This tutorial is from open-source community. Access the source code

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在本实验中,我们将探索 JavaScript 中的字符串操作概念。具体来说,我们将重点关注 wordWrap 函数,该函数允许我们使用换行符将字符串换行到指定的字符数。在本实验结束时,你将更好地理解如何在 JavaScript 中操作字符串以满足特定的格式要求。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/AdvancedConceptsGroup -.-> javascript/template_lit("Template Literals") subgraph Lab Skills javascript/variables -.-> lab-28697{{"换行字符串"}} javascript/data_types -.-> lab-28697{{"换行字符串"}} javascript/arith_ops -.-> lab-28697{{"换行字符串"}} javascript/comp_ops -.-> lab-28697{{"换行字符串"}} javascript/template_lit -.-> lab-28697{{"换行字符串"}} end

换行字符串的说明

要进行编码练习,请打开终端/SSH 并输入 node

此代码使用换行符将字符串换行到指定的字符数。使用方法如下:

  1. 使用 String.prototype.replace() 和正则表达式在距离 max 个字符最近的空白处插入指定的换行符。
  2. 如果你不想使用第三个参数 br 的默认值 '\n',可以省略它并提供自己的字符。

以下是代码:

const wordWrap = (str, max, br = "\n") =>
  str.replace(
    new RegExp(`(?![^\\n]{1,${max}}$)([^\\n]{1,${max}})\\s`, "g"),
    "$1" + br
  );

以下是一些使用示例:

wordWrap(
  "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempus.",
  32
);
// 'Lorem ipsum dolor sit amet,\nconsectetur adipiscing elit.\nFusce tempus.'

wordWrap(
  "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempus.",
  32,
  "\r\n"
);
// 'Lorem ipsum dolor sit amet,\r\nconsectetur adipiscing elit.\r\nFusce tempus.'

总结

恭喜你!你已经完成了换行字符串实验。你可以在 LabEx 中练习更多实验来提升你的技能。