Перенос строки в строке

JavaScriptJavaScriptBeginner
Практиковаться сейчас

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

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии мы будем изучать концепцию манипуляции строками в 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. Если вы не хотите использовать значение по умолчанию '\n' для третьего аргумента, br, вы можете его опустить и указать собственный символ.

Вот код:

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, чтобы улучшить свои навыки.