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

WBOY
リリース: 2016-06-06 20:52:31
オリジナル
1329 人が閲覧しました

程序中经常对字符或者字符串做全角半角的判定,如全角字母,数字,标点符号等。虽然有很多方法可以做出正确的判断,但是我想了解的是,这些判断的本质是什么,也就是说对字符的编码或者是对字符在计算机中存储的长度做出怎样的判断后得出是全角还是半角的结论。虽是扫盲级别的问题,但是很想对这类问题的本质有一个清楚的认识,请各路大侠不吝赐教!谢谢!
实现语言不限,最好是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 までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート