javascript - 关于字符(串)的全角半角的判定本质

WBOY
풀어 주다: 2016-06-06 20:52:31
원래의
1330명이 탐색했습니다.

程序中经常对字符或者字符串做全角半角的判定,如全角字母,数字,标点符号等。虽然有很多方法可以做出正确的判断,但是我想了解的是,这些判断的本质是什么,也就是说对字符的编码或者是对字符在计算机中存储的长度做出怎样的判断后得出是全角还是半角的结论。虽是扫盲级别的问题,但是很想对这类问题的本质有一个清楚的认识,请各路大侠不吝赐教!谢谢!
实现语言不限,最好是php,java或者js。

回复内容:

程序中经常对字符或者字符串做全角半角的判定,如全角字母,数字,标点符号等。虽然有很多方法可以做出正确的判断,但是我想了解的是,这些判断的本质是什么,也就是说对字符的编码或者是对字符在计算机中存储的长度做出怎样的判断后得出是全角还是半角的结论。虽是扫盲级别的问题,但是很想对这类问题的本质有一个清楚的认识,请各路大侠不吝赐教!谢谢!
实现语言不限,最好是php,java或者js。

这个其实很好理解的吧,半角全角什么的只是显示的不同而已,归根结底的说其实还是转换之后存储到电脑里的机器码(不知道是不是叫这个)的不同啊,不同的机器码对应不同的字符。要做区别的话php可以转义成\xE2这种格式(我也不知道这种格式叫神马..==!),js应该也有相应的办法吧。

<?php // 半角返回0,全角返回1
function DBCorSBC($char) {
    $ascii = ord($char);
    if ($ascii < 128) {
        return 0;
    }   
    else {
        return 1;
    }   
}
로그인 후 복사
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿