【问题标题】:What are these characters called and how can I normalize them?这些字符叫什么,我怎样才能使它们正常化?
【发布时间】:2015-01-25 17:24:19
【问题描述】:

我有一个在线聊天,用户开始输入一些间隔很尴尬的字符,例如passion...

这些字符叫什么?如何使用 ActionScript 3 将它们转换/规范化为 passion

【问题讨论】:

    标签: actionscript-3


    【解决方案1】:

    这些是拉丁字符,(有关更多信息,请参阅here)转换它们的一种方法是将它们映射到对应的 ascii 字符。这是一个示例应用程序,仅针对字符 passion

    public class Main extends Sprite 
    {
        private var mapping:Object = {
            "p": "p",
            "a": "a",
            "s": "s",
            "i": "i",
            "o": "o",
            "n": "n"
        };
        public function Main():void 
        {
            var test:String = "passion";
    
            trace(filter(test));
        }
    
        public function filter(string:String):String {
            var returnString:String = "";
            for (var i:int; i < string.length; ++i) {
                var char:String = string.charAt(i);
                returnString += mapping[char] ? mapping[char] : string.charAt(i);
            }
            return returnString;
        }
    
    }
    

    【讨论】:

    • 所以它们被称为全角字符?凉爽的。有没有一种方法可以在不必映射每个字符的情况下转换它们?将abc 转换为十进制时,我得到了239 189 129, 239 189 130, 239 189 131,所以它们看起来是连续的,就像abc97, 98, 99... 理想情况下,我想去掉所有存在正常字符的全角字符替换它。
    • 是的,如果您可以更好地使用范围,您还需要检查大写版本。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-03
    • 2020-03-07
    • 1970-01-01
    • 2022-01-11
    • 1970-01-01
    • 2016-08-28
    相关资源
    最近更新 更多