我尝试使用toUppercase()方法将日语字符转换为大写字母,但它返回相同的字符串而没有转换。
还有其他方法可以使用jquery或javascript。
fieldValue = "ショウコ"; //japanese string.
function convertToUppercase(fieldValue)
{
convertedValue = fieldValue.toUpperCase();
return convertedValue;
}
非常感谢任何帮助!
答案 0 :(得分:7)
维基百科上有一个list of all the "small" letters(称为“你”):
ぁぃぅぇぉっゃゅょゎァィゥェォヵㇰヶㇱㇲッㇳㇴㇵㇶㇷㇷ゚ㇸㇹㇺャュョㇻㇼㇽㇾㇿヮ
你可以使用switch statement将它们转换为“大”等价物,为方便起见,我会在这里输入:
あいうえおつやゆよわアイウエオカクケシスツトヌハヒフプヘホムヤユヨラリルレロワ
请注意,当辅音变得“大”时,它们的读取方式不一定相同;例如,何ヶ月被读作“なんかげつ(nankagetsu)”,而不是“なんけつつ(nankegetsu)”。っ,表示下一个音节上的glottal stop,当它变大时被读为“tsu”。
“大”元音表明他们需要有自己的音节长度。 (这里也有一个术语,但我不是语言学家 - 对不起!)
答案 1 :(得分:2)
我对日文字符的名字有点无知,但我知道Sugar.js有许多操作和转换这些字符的方法。它包含zenkaku
,hankaku
,hiragana
和katakana
等方法。
答案 2 :(得分:0)
感谢您的帮助并引导我走向正确的方式
最后我提出了这个解决方案。
function convertBigKana(kanaVal){
var smallKana = Array('ァ','ィ','ゥ','ェ','ォ','ヵ','ヶ','ㇱ','ㇲ','ッ','ㇳ','ㇴ','ㇵ','ㇶ','ㇷ','ㇸ','ㇹ','ㇺ','ャ','ュ','ョ','ㇻ','ㇼ','ㇽ','ㇾ','ㇿ','ヮ');
var bigKana = Array('ア','イ','ウ','エ','オ','カ','ケ','シ','ス','ツ','ト','ヌ','ハ','ヒ','フ','ヘ','ホ','ム','ヤ','ユ','ヨ','ラ','リ','ル','レ','ロ','ワ');
var ckanaVal = '';
for (var i = 0; i < kanaVal.length; i++){
//var index = smallKana.indexOf(kanaVal.charAt(i)); //indexOf and stri[i] don't work on ie
var index = jQuery.inArray(kanaVal.charAt(i), smallKana);
if (index !== -1) {
ckanaVal+= bigKana[index];
}
else
{
ckanaVal+= kanaVal.charAt(i);
}
}
return ckanaVal;
}