2017-02-23 9 views
0

Я новичок ни в Javascript, ни в регулярном выражении. Мне нужно заменить письмо первого слова на заглавную букву, и мой код делает это, но он также заменяет письмо после специального символа или другого письма (например, ąčęėįš или т. Д.), И мне почему-то нужно избегать его и изменять только первую букву. Может ли кто-нибудь помочь мне решить эту проблему?Заглавная буква после специального символа или буквы

Мой код здесь:

function capitalizeName(input) { 
var name = input.val(); 
    name = name.toLowerCase().replace(/\b[a-z]/g, function(letter) { 
    return letter.toUpperCase(); 
}) 
input.val(name); 

ответ

0

Затем вам нужно удалить границу слова с пространством или начать матч якорь.

name = name.toLowerCase().replace(/(^|\s)[a-z]/g, function(letter) { 
    return letter.toUpperCase(); 
}) 
+1

Спасибо, что работал! – devorye

0

This должны работать для вас:

или это

console.log("tihi is some rčęėįš random typing. Is it good? maby has some minor-bugs but at least works" 
 
.replace(/\w.*?\W/g, x => x[0].toUpperCase() + x.substr(1)))

вы должны добавить нон мировой символ в конце для этой работы.

const data = "tihi is some rčęėįš random typing. Is it good? maby has some minor-bugs but at least works." 
 
    
 
    
 
const capitalize = data => (data + ' ').replace(/\w.*?\W/g, x => x[0].toUpperCase() + x.substr(1)).substr(0, data.length) 
 

 

 
console.log(capitalize(data))

0

Я предпочитаю без регулярных выражений ответа на все эти вопросы, для удовольствия и в основном не нужны сложные регулярные выражения

"java script is cool".split(" ").map(function(w){return w[0].toUpperCase()+w.substr(1)}).join(" ") 
"Java Script Is Cool" 
Смежные вопросы