全角半角判断

  • 半角范围:u0000 - u00FF, uFF61 - uFF9F, uFFE8 - uFFEE
  • 全角范围:
    • 全角数字(0-9) uFF10 - uFF19
    • 全角大文字(A-Z): uFF21 - uFF3A
    • 全角小文字(a-z): uFF41 - uFF5A
    • 全角平仮名:u3040 - u309F
    • 全角片仮名:u30A0 - u30FF
    • 全角Latin: uFF01 - uFF5E
    • 全角Symbol: uFFE0 - uFFE5
  • 以下是判断全角半角混合字符串的字节数是否超过指定的字节数。(半角被认为是一个字节)

    1. functionisOverBytes(s,maxbytes)
    2. {
    3. vari=0;
    4. varbytes=0;
    5. varuFF61=parseInt("FF61",16);
    6. varuFF9F=parseInt("FF9F",16);
    7. varuFFE8=parseInt("FFE8",16);
    8. varuFFEE=parseInt("FFEE",16);
    9. while(i<s.length)
    10. {
    11. varc=parseInt(s.charCodeAt(i));
    12. if(c<256){
    13. bytes=bytes+1;
    14. }
    15. else{
    16. if((uFF61<=c)&&(c<=uFF9F)){
    17. bytes=bytes+1;
    18. }elseif((uFFE8<=c)&&(c<=uFFEE)){
    19. bytes=bytes+1;
    20. }
    21. else{
    22. bytes=bytes+2;
    23. }
    24. }
    25. if(bytes>maxbytes){
    26. returntrue;
    27. }
    28. i=i+1;
    29. }
    30. returnfalse;
    31. }

    你可能感兴趣的:(判断)