当前位置: 首页 > news >正文

Lua实战之统计字符串中任意字符出现的次数

Description

求出指定字符串中任意字符出现的次数!
e.g.
指定字符串:"Hello World!"
"H"出现1次,"e"出现1次,"l"出现3次,"o"出现2次,"W"出现1次,"r"出现1次,"d"出现1次,空格出现1次,"!"出现1次!

Implemention

local LogManager = require("LogManager")

local testStr = "Hello World!"

function getCharOccurrenceCnt(targetStr)
    local retTbl = {}
    for s in string.gmatch(targetStr, ".") do
        if retTbl[s] then
            retTbl[s] = retTbl[s] + 1
        else
            retTbl[s] = 1
        end
    end
    return retTbl
end

LogManager:dump(getCharOccurrenceCnt(testStr), "retTbl")

--[[
- "retTbl" = {
-     " " = 1
-     "!" = 1
-     "H" = 1
-     "W" = 1
-     "d" = 1
-     "e" = 1
-     "l" = 3
-     "o" = 2
-     "r" = 1
- }
]]

相关文章:

  • 用OE收GMAIL信
  • cocos2d-lua:进度条ProgressTimer的使用
  • 用HFNetChk下载更新补丁
  • cocos2d-lua:Label的使用
  • win打开自带的画图工具
  • HR经理必备之IT术语
  • cocos2d-lua:XMLHttpRequest的使用
  • [啃书]身体使用手册 --《You:The owner's manual》
  • bat 概述
  • 圣诞节送给访问我BLOG的人
  • Lua实战之洗牌算法
  • Lua中loadstring的使用
  • 玩转“网上邻居”之浏览服务原理(一)
  • 玩转“网上邻居”之浏览服务原理(二)
  • cocos2d-lua:控件长按处理
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • JAVA之继承和多态
  • LintCode 31. partitionArray 数组划分
  • Mysql数据库的条件查询语句
  • Python语法速览与机器学习开发环境搭建
  • SAP云平台运行环境Cloud Foundry和Neo的区别
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • ViewService——一种保证客户端与服务端同步的方法
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 基于HAProxy的高性能缓存服务器nuster
  • 精彩代码 vue.js
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 前端
  • 悄悄地说一个bug
  • 收藏好这篇,别再只说“数据劫持”了
  • 思考 CSS 架构
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 再谈express与koa的对比
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • # 数论-逆元
  • (附源码)php新闻发布平台 毕业设计 141646
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .NET 8.0 中有哪些新的变化?
  • .NET CLR基本术语
  • .NET MAUI Sqlite数据库操作(二)异步初始化方法
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • .net项目IIS、VS 附加进程调试
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • ?.的用法
  • @Data注解的作用
  • @vue-office/excel 解决移动端预览excel文件触发软键盘
  • [20150629]简单的加密连接.txt
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)
  • [android] 手机卫士黑名单功能(ListView优化)
  • [Android]将私钥(.pk8)和公钥证书(.pem/.crt)合并成一个PKCS#12格式的密钥库文件
  • [Bzoj4722]由乃(线段树好题)(倍增处理模数小快速幂)
  • [C\C++]读入优化【技巧】