2017-10-09 44 views
1

我具有有角的形式等:角2打字稿 - 为每个字在输入

<mat-form-field> 
    <input 
     matInput 
     placeholder="Name"> 
</mat-form-field> 

我需要利用在输入的每个单词。我用下面的代码:

input.value = current.replace(/\b(\w)/g, symbol => symbol.toLocaleUpperCase()); 

但它并不像大写字符“ľščťžýáíé......”我怎么能解决这个问题?

插入“ABCDEF CDEF”后返回“ABCDEF CDEF”(只是一个例子)

回答

1

解决:

替换原来的正则表达式:/\ B(\ W)/ G
用新的正则表达式:/(^ | \ s)实施AZ \ u00E0- \ u170E] /克

1

\ b为一个非字边界(即\ B将作出的边界为任何其没有按任何字符“T属于[0-9A-ZA-Z_])

因此,那些重音字成为你的字边界的任何1 ..

而是使用这个表达式

  /(^|\s)[a-z\u00E0-\u00FC]/g 
+0

thanx但它不起作用 – User

+0

你确定?,检查了这个问题https://stackoverflow.com/questions/16573099/javascript-jquery-uppercase-first-letter-of-variable-with-accents – sdfbhg

+0

解决了, chceck我的答案,它不只是接受\ u00FC后面的字符 – User