Используйте для своей выгоды слова в строке

Что лучший подход должен использовать для своей выгоды слова в строке?

165
задан Damjan Pavlica 30 October 2015 в 10:42
поделиться

5 ответов

Джон Ресиг (известный jQuery) портировал Perl-скрипт, написанный Джоном Грубером, на JavaScript. Этот сценарий использует более грамотный способ написания заглавных букв, в нем не используются маленькие слова, такие как, например, «из» и «и».

Вы можете найти это здесь: Использование заглавных букв в JavaScript

4
ответ дан 23 November 2019 в 21:06
поделиться

Использование JavaScript и html

String.prototype.capitalize = function() { return this.replace(/(^|\s)([a-z])/g, function(m, p1, p2) { return p1 + p2. toUpperCase(); }); };

В принципе, вы можете сделать string.capitalize() и он будет писать каждую 1-ю букву каждого слова.

Источник: http://www.mediacollege.com/internet/javascript/text/case-capitalize.html

4
ответ дан 23 November 2019 в 21:06
поделиться

Поскольку все дали вам ответ на JavaScript, который вы просили, я добавлю, что свойство CSS text-transform: capitalize будет делать именно это.

Я понимаю, что это может быть не то, о чем вы просите - вы не указали нам контекст, в котором вы это делаете - но если это просто для презентации, я бы определенно выбрал альтернативу CSS.

4
ответ дан 23 November 2019 в 21:06
поделиться

http://www.mediacollege.com/internet/javascript/text/case-capitalize.html - один из многих ответов.

Google может быть всем, что вам нужно для решения подобных задач.

Наивный подход заключается в том, чтобы разделить строку пробелами, прописать первую букву каждого элемента полученного массива и соединить их вместе. При этом существующая капитализация остается неизменной (например, HTML остается HTML и не превращается в нечто глупое вроде Html). Если вы не хотите такого эффекта, перед разделением переведите всю строку в нижний регистр.

0
ответ дан 23 November 2019 в 21:06
поделиться
function capitalize(s){
    return s.toLowerCase().replace( /\b./g, function(a){ return a.toUpperCase(); } );
};

capitalize('this IS THE wOrst string eVeR');

output: "This Is The Worst String Ever"

Update:

Похоже, это решение заменяет мое: https://stackoverflow.com/a/7592235/104380

32
ответ дан 23 November 2019 в 21:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: