String.charCodeAt()就可以输出其Unicode 字符代码。通过Unicode 字符代码的大小,可以判断是中文字符,还是数字。
1)英文a-z是65-90,A-Z是97-112
2)数字是0-9是,48-57
3)上万的都是中文字符

var str:String = "hello world! 你好世界! 88!";
for (var i:int = 0; i < str.length; i++)
{
    trace(str.charAt(i), "-", str.charCodeAt(i));
}
————————————————
版权声明:本文为CSDN博主「Xiang08」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xiang08/article/details/8029522

  

 

字符转成ASCII码:

格式:字符串变量.charCodeAt(字符位置);

var str:String = “A”;
trace(str.charCodeAt());//输出:65

ASCII码转成字符:

var a:String=String.fromCharCode(ASCII码);

var a:String=String.fromCharCode(97);

trace(a);//输出:a

  

方法一.遍历字符串逐个判断字符是否符合要求

/** 
* true:CuPlayer.com全是汉子或字母数字 
* true:CuPlayer.com存在不符合条件的字符 
* */ 
public function judgeStr(str:String):Boolean 
{ 
var res:Boolean=false; 
for(var i:int=0;i<str.length;i++) 
{ 
res=false; 
var chat_code:Number=str.charCodeAt(i);//获得一个字符的ASCII编码 
if((chat_code>=19968&&chat_code<=40869)|| //CuPlayer.com中文汉字 
(chat_code>=48&&chat_code<=57)|| //CuPlayer.com数字 
(chat_code>=65&&chat_code<=90)|| //a-z 
(chat_code>=97&&chat_code<=122)) //A-Z 
{ 
res=true; 
} 
if(!res) 
{ 
return false; 
} 
} 
return true; 
} 

 方法二.利用正则表达式判断

/** 
* true:CuPlayer.com全是汉字或字母数字 
* true:CuPlayer.com存在不符合条件的字符 
* */ 
public function judgeStr(str:String):Boolean 
{ 
var reg:RegExp; 
reg = new RegExp("^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$","g"); 
if(reg.exec(str)) 
{ 
return true; 
} 
else 
{ 
return false; 
} 
} 

  https://www.cuplayer.com/player/playercodeas/2013/12311134.html

posted on 2020-03-13 15:16  我是cdt  阅读(290)  评论(0编辑  收藏  举报