• 获取大段文字中的所有中文字符并去重


    主要目的是freetype加载全部中文文字的时候节省一些开销。

    1.首先将所有含有中文文字的java、json等,全文粘贴到一个文本中。

    2.在文本中全文搜索,开启正则,条件为:[^一-龥]+

    3.将所有符合搜索结果的部分replace为""

    4.将剩余的中文字符用下面代码简单处理

    import java.util.ArrayList;
    
    /**
     * Created by xirtam on 15/6/29.
     */
    public class Test {
        public static void main(String[] args) {
            String s = "地球打火机手电筒肥皂锅搓衣板笔鲜花螺丝刀黄瓜苹果米油巧克力蛋糕玉米盐女装男装围巾帽子内衣袜子腰带领带手机电脑键盘鼠标游戏机相机路由器打印机空调冰箱洗衣机热水器微波炉电视机吸尘器燃气灶煤石油铁矿石木材钢黄金比特币浓缩铀汽车飞机游轮别墅游泳池游乐场草原商业街仓库管理员每天点时按库存商品总值收取保管费小女孩每天点商品都会有新的价格银行家请保存足够的现金流用于支付税务程序员我女朋友经常背着我买电池到底是为什么呢游戏作者按住买入或卖出按钮在屏幕上拖动可以批量购买或卖出美女前两天遇到一个程序员居然说自己有女朋友真是好笑渔民新鲜的鱼要买吗教师不好好学习将来就考不上大学找不到工作没有女朋友女店员只要能改变这贫苦的生活要我做什么都可以女学者和平久了就会爆发战争这是人类的本性那个老板有黄瓜卖吗古董商一些看上去没用的东西说不定以后用得上仓库管理员每天点时按库存商品总值收取保管费游戏作者按住买入或卖出按钮在屏幕上拖动可以批量购买或卖出黑衣人明天会涨价黑衣人明天会降价仓库有仓库就不用交保管费了医院医院可以会员卡所有商品买入价格折商品欢迎选购存货仓库中商品总价值为交谈获取新的商机秘宝神秘物品有特殊功能资产空白的纸条传送您要去哪儿位置你发现了一个金钱你发现了一个第你发现了一个天时距离末日爆发已经过了天上一页已经是第一页了下一页已经是最后一页了第页点我干啥纸条商品的价格每天都会变化纸条低价买高价卖是经商的准则纸条一些奇怪的人偶尔会来卖一些奇怪的东西纸条正式版游戏支持存档欢迎购买正式版游戏应用您的支持是我们努力的动力金币不足没钱还想买东西过完一天一天过去了请每天注意商品的价格变化及时更改出售策略敬请期待这个功能正在开发中解锁传送有了秘银可以修好星际传送装置了卖出商品一位顾客买走了个首次买入仓库管理员每天会收取库存商品价值的百分之作为保管费保管费用仓库中商品总价值仓库管理员收取了的保管费用婚姻幸福小明心仪许久的女神终于答应了嫁给小明从此小明和妻子过上了幸福美满的生活地球地球上生活着人类和各种动物物产丰富资源广博月球月球没有本土生命生活着的大部分都是地球人和地球的动植物小明是一名普通的应届毕业生三流大学普通专业所以在找工作的过程中屡屡受挫为了不让父母担心小明决定先做点小买卖养活自己故事就从这里开始你消灭了所有的机械人你以为你拯救了世界你忽然醒来原来这一切只是你的一场梦你走出家门看到街上有很多机械人晴阴雨雪冰雹风买入卖出增长下降升级没有商品上一页下一页显示故事的计时器显示的文字数据买入卖出个人神秘物品左侧按钮金钱游戏中的人数用于计数开始剧情的时间第二天的价格变化第二天的价格变化第二天的价格变化变价随机要涨几个平几个跌几个随机哪个涨哪个跌哪个平随机涨幅跌幅改变价格计算第二天顶部信息时间速度每十天交仓库保管费开始剧情回调增加一条剧情增加动画二排隐藏左侧按钮二排隐藏上一页下一页小纸条交谈预测涨点击买入金币不足点击买入出售页面传送购买页面点击月球点击买入金币不足买入事件特殊物品秘银点击卖出";
            char[] chars = s.toCharArray();
            ArrayList<Character> result = new ArrayList<Character>();
            for (char c : chars) {
                if (!result.contains(c)) {
                    result.add(c);
                }
            }
            for (char c : result) {
                System.out.print(c);
            }
            System.out.println("");
            System.out.println("中文总数为:" + result.size());
        }
    }

    控制台就会输出需要的全部中文并去重了。

    地球打火机手电筒肥皂锅搓衣板笔鲜花螺丝刀黄瓜苹果米油巧克力蛋糕玉盐女装男围巾帽子内袜腰带领脑键盘鼠标游戏相路由器印空调冰箱洗热水微波炉视吸尘燃气灶煤石铁矿木材钢金比特币浓缩铀汽车飞轮别墅泳池乐场草原商业街仓库管理员每天点时按存品总值收取保费小孩都会有新的价格银行家请足够现流用于支付税务程序我朋友经常背着买到底是为什么呢作者住入或卖出钮在屏幕上拖动可以批量购美前两遇一个居然说自己真好笑渔民鱼要吗教师不学习将来就考大找工没店只能改变这贫苦生活做和平久了爆发战争人类本性那老古董些看去东西定后得黑明涨降交医院卡所折欢迎选货中谈获秘宝神物殊功资产白纸条传送您哪儿位置你钱第距离末日已过页下最干啥化低高准则奇怪偶尔正式版持档应们努还想完注意及更售策略敬期待开解锁修星际顾客走首次百分之婚姻幸福心仪许终答嫁给从此妻满各种丰富源广博月土命部植名普通届毕三专屡受挫让父母担决先养故事里始消灭械拯救世界忽醒切梦门很多晴阴雨雪雹风增长升级显示计文字数据左侧剧情间二随几跌幅算顶信息速度十回加画排隐藏预测击面件
    中文总数为:446
  • 相关阅读:
    PAT Advanced 1073 Scientific Notation (20 分)
    PAT Advanced 1071 Speech Patterns (25 分)
    C++ 正则查找
    PAT Advanced 1022 Digital Library (30 分)
    Linux文件系统及常用命令
    Elasticsearch常用查询
    Sublime Text3 快捷键
    Lua函数
    线程池
    Jdk8新特性之Base64
  • 原文地址:https://www.cnblogs.com/xirtam/p/4609156.html
Copyright © 2020-2023  润新知