Использование string.replace в Javascript | Codementor
Я также опубликовал этот пост на своей средней странице, вы можете проверить его здесь
Ранее сегодня я работал над испытанием на Codewars или, как их обычно называют; Ката
. Работая над ним, я также провел небольшое исследование того, как я могу его решить, и наткнулся на строковый метод, который никогда раньше не использовал. Метод замены().
String.prototype.replace()
Согласно MDN, метод replace возвращает новую строку после того, как вся или часть ее была заменена на основе шаблона/строки замены.
Шаблон может быть подстрокой или регулярным выражением (я полагаю, вы все знаете о регулярных выражениях, если вы не знаете, то можете проверить это).
Метод replace принимает два аргумента:
- Сопоставляемый шаблон или подстрока.
- Новая строка/подстрока или функция, которая возвращает новую строку для замены совпадающей строки.
Давайте посмотрим на синтаксис замены
const newString = string. replace(подстрока/шаблон, строка новостей/функция)
Решение задачи
Задача по преобразованию строки в верблюжий регистр — Codewars
Нам нужно найти все символы в заданной строке, которые соответствуют символу подчеркивания (_) или дефису (-) и алфавитов после них, преобразовать их в прописные буквы и удалить неалфавитные символы
Прежде всего, поскольку метод замены может принимать регулярное выражение, которое будет использоваться для сопоставления, мы можем создать выражение, которое соответствует тому, что мы хотим заменить. 9a-z] — соответствует любому символу в строке, который не является алфавитом от a-z
[a-z] — соответствует любому символу в строке, являющейся алфавитом от az до z.
g — глобальный, чтобы убедиться, что он проверяет всю строку
i — нечувствительный, чтобы убедиться, что он не беспокоится о регистре строки
Теперь, когда мы выяснили, как сопоставлять строку/символы, над которыми мы хотим работать, мы также должны выяснить, как заменить их в строке.
Давайте создадим функцию в качестве второго параметра, которая может принимать совпадающие символы в строке и преобразовывать их в нужные нам новые символы. 9аз]/ги, »)) }
Я уверен, что есть несколько способов решить эту конкретную проблему, но использование метода замены кажется очень простым и удобным.
Вы также можете комментировать свои собственные решения или вопросы.
Я надеюсь, что это кому-то поможет…
Чтобы получить дополнительные советы или рекомендации, вы можете связаться со мной в Twitter ✌️
Понравился этот пост?
Оставьте лайк и комментарий для Fagbohungbe
Как заменить пробелы внутри строк с помощью JavaScript (используя RegEx) – Techstacker
Узнайте, как заменить пробелы внутри строк с помощью JavaScript с помощью Regex (регулярных выражений) — инструмента для поиска шаблонов в тексте.
Regex (часто пишется как «RegEx или «RegExp») — это эффективный инструмент для работы со строками (текстом). Наиболее распространенные варианты использования регулярных выражений:
- Проверка текста
- Текстовый поиск
Сегодня вы узнаете на простом примере, в котором регулярное выражение заменяет все пробелы в строке текста (строке) на 9.0076 ничего — но вы можете использовать следующий пример кода, чтобы заменить пробел другими символами.
Пробел считается символом. Таким образом, каждый пробел между словами в этом предложении, которое вы сейчас читаете, считается одним пробелом.
В этом предложении 6 пробелов.
Для замены пробельных символов регулярное выражение имеет так называемый метасимвол , называемый \s
, который ищет одиночный пробельный символ, включая символы новой строки, табуляции и Unicode.
Вот так:
const Offering = "В этом предложении 6 пробелов." console.log(предложение.replace(/\s/g, "")) // В этом предложении 6 символов пробела.
Что происходит в коде:
- Сначала мы присоединяем метод
к переменнойпредложения
, которая ссылается на строку, из которой мы хотим удалить пробелы. - Затем добавьте вышеупомянутый метасимвол
\s
в качестве аргумента для поиска пробельных символов. Поскольку обратная косая черта (\
) — это зарезервированный символ escape в JavaScript, мы добавляем/
перед ним к unescape , так что он становится/\s/
. - Затем мы используем глобальный флаг
g
, который сообщает JavaScript, что мы хотим найти всеg
, будет заменен только первый экземпляр пробела (междуЭто предложение
). - Наконец, что мы заменяем пустое пространство чем? Любая пустая строка
""
, который удаляет пробельные символы и делает каждое слово склеенным в одно слово.
Примечание: мы не изменили исходную переменную предложения , сделав это, мы просто используем console.log()
, чтобы распечатать, как это будет выглядеть, если вы используете replace(/\s/g , "")
метод регулярного выражения на нем.