UnluckySerivelha
@UnluckySerivelha

Как поправить регулярное выражение?

Есть функция, с помощью регулярного выражения возвращающая строку, каждое слово в которой начинается с большой буквы. То есть, каждая буква после пробела заменяется на верхний регистр.
function capitalize(str) {

        return str.replace(/(^|\s)\S/g, function (a) {
            return a.toUpperCase()
        })

    }

Как дополнить регулярное выражение, чтобы замена на большую букву происходила еще и после знака тире?
  • Вопрос задан
  • 112 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const capitalize = str => str.replace(/(^|\s|-)+\S/g, m => m.toUpperCase());
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
function capitalize(str) {

  return str.replace(/(^|\s|\-)(?:\w)/g, function (a) {
            return a.toUpperCase()
        })

    }

capitalize("-ab c d");
"-Ab C D"


наверное можно упростить
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы