判断一个文本是中文,日语还是韩语可以直接从unicode段来进行正则判断, 下面是javascript demo代码:
function isChinese(temp)
{
var re = /[^\u4e00-\u9fa5]/;
if(re.test(temp)) return false;
return true;
}
function isJapanese(temp)
{
var re = /[^\u0800-\u4e00]/;
if(re.test(temp)) return false;
return true;
}
function isKoera(chr) {
if(((chr > 0x3130 && chr < 0x318F) ||
(chr >= 0xAC00 && chr <= 0xD7A3)))
{
return true;
}
return false;
}
function isContainKoera(temp)
{
var cnt = 0;
for(var i=0;i < temp.length ; i++)
{
if(isKoera(temp.charAt(i)))
cnt++;
}
if (cnt > 0) return true;
return false;
}
function isContainChinese(temp)
{
var cnt = 0;
for(var i=0;i < temp.length ; i++)
{
if(isChinese(temp.charAt(i)))
cnt++;
}
if (cnt > 5) return true;
return false;
}
function isContainChinese2(temp)
{
var cnt = 0;
for(var i=0;i < temp.length ; i++)
{
if(isChinese(temp.charAt(i)))
cnt++;
}
if (cnt > 0 && temp.length<=3) return true;
return false;
}
function isContainJapanese(temp)
{
var cnt = 0;
for(var i=0;i < temp.length ; i++)
{
if(isJapanese(temp.charAt(i)))
cnt++;
}
if (cnt > 2) return true;
return false;
}
本文提供了一组JavaScript函数,用于通过检查文本的Unicode范围来判断文本是否为中文、日语或韩语。这些函数包括直接匹配特定Unicode范围的正则表达式,以及计算文本中特定语言字符出现次数的方法。

被折叠的 条评论
为什么被折叠?



