全角字符比如java JAVA实际上就是汉字,我想已经包含在汉字范围内了。
半角 java JAVA 就是ASCII码。
实际上没有什么全角半角之分。谁见过有半角的汉字?

解决方案 »

  1.   

    /[\x00-\uFF]/ 符号/[\u4E00-\u9FA5]/ 汉字
     
    /[\uFF00-\uFFFF]/ 全角符号
      

  2.   

    /[\u0000-\u00FF]/ 半角符号/[\u4E00-\u9FA5]/ 汉字
     
    /[\uFF00-\uFFFF]/ 全角符号
      

  3.   

    /[\u0000-\u00FF]/ 半角符号 就是那256个ASCII码吧
    /[\uFF00-\uFFFF]/ 全角符号
    uFF00-uFFFF 这中间只有256个字符 全角字符就这几个吗?
    我们用输入法时,不是有全角半角状态之分吗?
    还有 java中用两个字节存放汉字,一个字节存放ASCII码
    那对于全角,半角字符又分别用几个字节?
    请指教
    在java中计算字符串的长度是按字符个数而不是按存储长度来计算的
    String str = "汉字";
    int len = str.length();//len==2;
    那计算字符串的存储长度时需判断每个字符是汉字,还是西文,
    是全角,还是半角的了
      

  4.   

    <script language=javascript>
    function check(str){
    var ret=str.length
    try{ret+=str.match(/[^\x00-\xff]/g).length}catch(e){}
    alert(ret)
    }
    </script>
    <TEXTAREA NAME="aa" ROWS="10" COLS="60">中文Abc</TEXTAREA>
    <INPUT TYPE="button" NAME="bb" onclick='check(aa.value);' value="测试">
      

  5.   

    谢谢!
    你把ASCII码以外的字符都归为两个字节长,
    java中是这样处理的吗?
    那我如何判断输入的字符是全角半角的呢
      全角     半角
       a    a
       汉字   汉字
      

  6.   

    <script>
    var str1="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    var str2="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    alert(str1.length + "?" + str2.length);
    var str="";
    for(i=0;i<str1.length;i++){
     str += "半角 " + str1.charAt(i) + ": " + str1.charCodeAt(i) + "  全角 " + str2.charAt(i) + ": " + str2.charCodeAt(i) +"<br>";}
    document.write(str);
    </script>
    输出:
    半角 a: 97 全角 a: 65345
    半角 b: 98 全角 b: 65346
    半角 c: 99 全角 c: 65347
    半角 d: 100 全角 d: 65348
    半角 e: 101 全角 e: 65349
    半角 f: 102 全角 f: 65350
    半角 g: 103 全角 g: 65351
    半角 h: 104 全角 h: 65352
    半角 i: 105 全角 i: 65353
    半角 j: 106 全角 j: 65354
    半角 k: 107 全角 k: 65355
    半角 l: 108 全角 l: 65356
    半角 m: 109 全角 m: 65357
    半角 n: 110 全角 n: 65358
    半角 o: 111 全角 o: 65359
    半角 p: 112 全角 p: 65360
    半角 q: 113 全角 q: 65361
    半角 r: 114 全角 r: 65362
    半角 s: 115 全角 s: 65363
    半角 t: 116 全角 t: 65364
    半角 u: 117 全角 u: 65365
    半角 v: 118 全角 v: 65366
    半角 w: 119 全角 w: 65367
    半角 x: 120 全角 x: 65368
    半角 y: 121 全角 y: 65369
    半角 z: 122 全角 z: 65370
    半角 A: 65 全角 A: 65313
    半角 B: 66 全角 B: 65314
    半角 C: 67 全角 C: 65315
    半角 D: 68 全角 D: 65316
    半角 E: 69 全角 E: 65317
    半角 F: 70 全角 F: 65318
    半角 G: 71 全角 G: 65319
    半角 H: 72 全角 H: 65320
    半角 I: 73 全角 I: 65321
    半角 J: 74 全角 J: 65322
    半角 K: 75 全角 K: 65323
    半角 L: 76 全角 L: 65324
    半角 M: 77 全角 M: 65325
    半角 N: 78 全角 N: 65326
    半角 O: 79 全角 O: 65327
    半角 P: 80 全角 P: 65328
    半角 Q: 81 全角 Q: 65329
    半角 R: 82 全角 R: 65330
    半角 S: 83 全角 S: 65331
    半角 T: 84 全角 T: 65332
    半角 U: 85 全角 U: 65333
    半角 V: 86 全角 V: 65334
    半角 W: 87 全角 W: 65335
    半角 X: 88 全角 X: 65336
    半角 Y: 89 全角 Y: 65337
    半角 Z: 90 全角 Z: 65338
      

  7.   

    <script>
    function check(str){
    return str.charCodeAt(0)>0xff00
    }
    alert(check("a"))
    alert(check("a"))
    </script>
      

  8.   

    多谢各位指点 不胜感激!
    特意把帖子分数加到100以表感谢
    /[\uFF00-\uFFFF]/ 
    半角 Z: 90 全角 Z: 65338
    charCodeAt(0)>0xff00
    这里边的字码如 u,0x,都是什么意思?
    to qiushuiwuhen(秋水无恨) 你给的那段代码只能判断字母
    我输入汉字就不行了
    /[\u0000-\u00FF]/ 半角符号 /[\u4E00-\u9FA5]/ 汉字 
    /[\uFF00-\uFFFF]/ 全角符号
    如按这个范围 汉字和全角字符就没什么关系了
    全角半角就是那256个ASCII码的两种状态?
    欢迎讨论,马上结贴给分
    分不够 我再开贴给分好不好?
      

  9.   

    正则表达式中的\u 后面跟的是以四个十六进制数字表示的unicode字符值
    实际应用中大多数情况下没有必要检测输入的是全角还是半角字符,在需要限定输入值必须为数字的时候进行校验就可以了。本来汉字的123和就不能当作数字123使用,
    例如
    var n = 123; // ok
    var n = 123; // 错误
    再例
    如果要用正则表达式测试字符串是否为10,100,088,990.90格式(规定最多两位小数)
    str = "10,100,088,990.90";
    re=/^[1-9]\d{0,2}(,\d{3})*(\.\d{1,2})?$/;
    if(str.match(re)) alert("合法数字");
    else alert("对不起,数字格式不合法.");