Узнайте, как преобразовать строку в camelCase в Javascript.

CamelCase:

Camel case (stylized as camelCase; also known as camel caps or more 
formally as medial capitals) is the practice of writing phrases such 
that each word or abbreviation in the middle of the phrase begins 
with a capital letter, with no intervening spaces or punctuation.
Example: eBay, iPhone
The above details is taken from wikipedia. 

Шаги по преобразованию строки в 🐪 регистр

  • Преобразование ввода в строковый тип
  • Разделите строку на слова. Разделение основано не только на пространстве. Мы используем регулярное выражение для анализа строки, которая удаляет все специальные символы и разделяет строку на две части, если строка имеет две заглавные буквы, и разделяет числовую часть отдельно.
  • Преобразуйте первую строку в нижний регистр, а другую строку - с заглавной. Затем соедините струны.

Сначала нам нужно преобразовать ввод в строку, на тот случай, если в функцию передается не строка:

Теперь нам нужно разделить ввод на отдельные слова с помощью RegEx:

/[A-Z\xC0-\xD6\xD8-\xDE]?[a-z\xDF-\xF6\xF8-\xFF]+|[A-Z\xC0-\xD6\xD8-\xDE]+(?![a-z\xDF-\xF6\xF8-\xFF])|\d+/g

Объяснение вышеупомянутого RegEx можно найти здесь.

What this will do is , 
For input: "Text is 123 test TText123test !!12 --!~@#$%%^&*( (test)"
The regular expression will match 
[Text, is, 123, test, T, Text, 123, test, 12, test]

Теперь мы можем использовать метод match строкового объекта для преобразования его в слова с помощью нашего RegEx.

Теперь, когда у нас есть строка, преобразованная в слова, мы можем преобразовать ее в верблюжий регистр.

Давайте создадим функцию, которая принимает массив строк. Для строки с индексом 0 преобразуйте все символы строки в нижний регистр. Для всех остальных строк в массиве преобразуйте только первый символ строки в верхний регистр и преобразуйте все остальные символы в нижний регистр.

Здесь мы преобразовали каждый элемент в нижний регистр на каждой итерации цикла. Если индекс не 0, преобразуйте первый символ в верхний регистр.

Теперь давайте объединим весь приведенный выше код:

ПРИМЕЧАНИЕ. Это не работает, если строка содержит символы, отличные от ASCII. Чтобы поддержать это, нам нужно использовать более сложное регулярное выражение.

Для этого мы проверяем, содержит ли строка символы, отличные от ASCII:

RegEx для соответствия коду, отличному от ASCII, можно найти здесь. Чтобы он работал с не-ASCII, просто замените RegEx в функции toWords.

Если вы найдете этот полезный сюрприз, то я здесь.

Поделитесь, если вы счастливы 😃 😆 🙂.

Следуйте Javascript Jeep🚙, если чувствуете себя достойным.