Javascript 替换克罗地亚变音字符
我有一个脚本,人们把他们的名字和脚本生成不同的名字,根据他们的真名的第一个字符Javascript 替换克罗地亚变音字符,javascript,string,replace,Javascript,String,Replace,我有一个脚本,人们把他们的名字和脚本生成不同的名字,根据他们的真名的第一个字符 var firstNm = document.getElementById("Ime").value.toUpperCase(); 我在65-90(A-Z)的数组中有这些新名称。 获取第一个字母的过程如下所示: var firstNum = firstNm.charCodeAt(0) - 65; if (firstNum < 0 || firstNum > 25) { v
var firstNm = document.getElementById("Ime").value.toUpperCase();
我在65-90(A-Z)的数组中有这些新名称。
获取第一个字母的过程如下所示:
var firstNum = firstNm.charCodeAt(0) - 65;
if (firstNum < 0 || firstNum > 25) {
validName = false;
对不起,伙计们,谢谢你们的帮助,我通过添加这样的函数解决了自己的问题
function zamjenaZnakovaI(){
var tekst = document.getElementById("Ime").value;
tekst.indexOf( 'Č' ) == 0? tekst = tekst.replace( 'Č', 'C' ) :
tekst.indexOf( 'č' ) == 0? tekst = tekst.replace( 'č', 'c' ) :
tekst.indexOf( 'Ć' ) == 0? tekst = tekst.replace( 'Ć', 'C' ) :
tekst.indexOf( 'ć' ) == 0? tekst = tekst.replace( 'ć', 'c' ) :
tekst.indexOf( 'Š' ) == 0? tekst = tekst.replace( 'Š', 'S' ) :
tekst.indexOf( 'š' ) == 0? tekst = tekst.replace( 'š', 's' ) :
tekst.indexOf( 'Ž' ) == 0? tekst = tekst.replace( 'Ž', 'Z' ) :
tekst.indexOf( 'ž' ) == 0? tekst = tekst.replace( 'ž', 'z' ) :
tekst.indexOf( 'Đ' ) == 0? tekst = tekst.replace( 'Đ', 'D' ) :
tekst.indexOf( 'đ' ) == 0? tekst = tekst.replace( 'đ', 'd' ) :
tekst;
document.getElementById("Ime").value = tekst;
}
因为我只需要替换字符串中的第一个字母,而不是第五个或第四个
我调用了keyup上的函数
<input type="text" id="Ime" size="30" onkeyup="zamjenaZnakovaI()"/>
也许有更好的解决方案,但这一个有效。
因此,如果其他任何人需要类似的东西,这里是一个方法在威奇可以做到
干杯,D.您可以在 它将不在前127个ASCII字符中的Unicode字符转换为其ASCII等效字符
它可以处理您发布的字符(以及更多字符)。鉴于Javascript中对Unicode的支持较差,我不确定您是否能够(轻松地)做到这一点。似乎工作正常。在Chrome和Firefox中测试究竟什么不起作用?我觉得很好。请提供一个带有错误代码的演示。@zneak:See例如(虽然不是性能替代品)@Bergi,此解决方案不考虑独立的变音符号。每个变音符号也作为独立字符存在,您可以将其作为后缀添加到任何字符中。
<input type="text" id="Ime" size="30" onkeyup="zamjenaZnakovaI()"/>