1.JavaScript
判断是否存在中文和全角字符
str.match(/[^/x00-/xff]/ig)
判断包含中文字符串长度
aMatch=str.match(/[^/x00-/x80]/g);
str.length+(!aMatch?0:aMatch.length)
2.Java
/**
* checkHanZenメソッド
* 全角/半角文字チェック 全て全角文字:OK 全て半角文字:OK
* PARM : inText - INPUTのオブジェクト
* RETURN : boolean
* TRUE :チェックOK
* FALSE:エラー
*/
public boolean checkHanZen(String s){
//全て全角文字の判定
boolean flag1 = checkWideChar(s);
if(flag1){
return true;
}else{
//全て半角文字の判定
char cTemp;
for(int i=0;s.length()>i;i++) {
cTemp = s.charAt(i);
if((cTemp >= '!' && cTemp <= '~') || (cTemp >= '。' && cTemp <= '゚') || (cTemp == ' ')) {
;
} else {
return false;
}
}
return true;
}
}
//※20051102 add end
/**
* checkWideCharメソッド
* 全角文字チェック 全角文字かどうかをチェックする。
* また指定された入力文字数が最大文字数、最小文字数の間に 入っているかをチェックする。
* PARM : inText - INPUTのオブジェクト
* PARM : 最小文字数
* PARM : 最大文字数
* RETURN : boolean
* TRUE :チェックOK
* FALSE:エラー
*/
public static boolean checkWideChar(String s, int i, int j)
{
boolean flag = checkWideChar(s);
if(flag)
return s.length() <= j && s.length() >= i;
else
return false;
}
/**
* checkWideCharメソッド
* 全角文字チェック 全角文字かどうかをチェックする。
* PARM : inText - INPUTのオブジェクト
* RETURN : boolean
* TRUE :チェックOK
* FALSE:エラー
*/
public static boolean checkWideChar(String s)
{
try
{
if(s == null || s.equals(""))
return false;
byte abyte0[] = s.getBytes("EUC-JP");
for(int i = 0; i < abyte0.length; i++)
{
byte byte0 = abyte0[i];
if(byte0 >= 0 && byte0 <= 127 || byte0 == -114)
if(byte0 == 63)
{
for(int j = 0; j < s.length(); j++)
{
char c = s.charAt(j);
if(c == '?')
return false;
}
} else
{
return false;
}
}
return true;
}
catch(UnsupportedEncodingException unsupportedencodingexception)
{
return false;
}
}