Lua中string.lower()使用指南
前言
今天我们总结的函数也比较简单,函数的作用的将所给字符串的中的大写字母转换成小写字母,这种操作往往出现在比较操作之前,比如验证码通常都是不区分大小写的,接下来我们一起看一下函数的用法。
内容
string.lower()
原型:string.lower(s)
解释:接收一个字符串,然后返回一个将字符串中大写字母转化为小写字母的字符串副本,除此之外其他字符都不会被改变,大写字母的定义依赖于当前的本地设置。
Usage
首先我们新建一个文件将文件命名为lowertest.lua然后编写代码如下:
local sourcestr = "ADGdfhhjfhjafhdf~fa\000fFAKLDSFklj897890" print("\nsourcestr is "..sourcestr) local q_sourcestr = string.format("%q", sourcestr) print("\n\q_sourcestr is "..q_sourcestr) local lowerstr = string.lower(sourcestr); print("\n\lowerstr is "..lowerstr) local q_lowerstr = string.format("%q", lowerstr) print("\n\q_lowerstr is "..q_lowerstr)
运行结果
总结
由前两组结果的对比可以看出,普通的字符串如果遇到字符"\0"时将会被截断,想要不截断那就需要使用格式符%q来处理,具体方法参见前几篇文章Lua string.format()。
由4组结果对比可以看出,函数string.lower()不会在遇到"\0"时就被截断,而是继续处理直到最后一个字符。
相关推荐
-
Lua中实现StringBuffer功能
在Lua中,字符串是一个常量,如果用字符串连接符".."把2个字符串连接起来,例如first_str = first_str .. second_str,那么原来的first_str和second_str就会作为垃圾等待回收,first_str引用的是一个新的字符串,如果在程序里面有大量的字符串连接操作的话,性能会十分低下.Lua是一个很简洁的语言,他没有StringBuffer的实现,但是其实我们可以动手写一个简单的StringBuffer实现,来避免性能的问题. 首先定义一个叫St
-
Lua中的string库和强大的模式匹配学习笔记
lua原生解释器对字符串的处理能力是十分有限的,强大的字符串操作能力来自于string库.lua的string函数导出在string module中.在lua5.1,同时也作为string类型的成员方法,因此,我们既可以写成string.upper(s), 也可以s:upper(),选择你喜欢的写法. string.len(s)返回s的长度. string.rep(s, n)返回重复s字符串n次的字符串. string.lower(s)返回一份已将大写转成小写的字符串s的拷贝 lower,upp
-
Lua字符串库(string库)学习笔记
Lua 最强大的特性之一就是它的字符串处理能力,它支持字符格式化输出,具有可扩展的模式匹配查找功能,以及一些实用的字符操作,例如查询.截取.替换和删除等字符串操作,这些字符串操作函数都封装在一个名为 string 的模块里. Lua 里的字符索引是从 1 开始,索引值也可以是负数,这种情况将被解释成向后索引,从字符串末尾开始算起. 下面是 Lua 5.2 提供的字符串操作函数: byte 函数 string.byte 把字符串里的第 i 个字符转为 ASCII编码,默认是输出第一个字符的编码(只
-
Lua中字符串(string)浅析
Lua中字符串可以使用""或''声明,类似Javascript中的用法. 复制代码 代码如下: > ="sdfdsf" sdfdsf > ='sfdd' sfdd > ='abc"' abc" > ="abc'" abc' 同Java.Python一样,Lua的字符串是不可修改的值,可以通过string.gsub函数来替换字符串中的子串: 复制代码 代码如下: > s = string.gsub(
-
Lua中的string库(字符串函数库)总结
Lua解释器对字符串的支持很有限.一个程序可以创建字符串并连接字符串,但不能截取子串,检查字符串的大小,检测字符串的内容.在Lua中操纵字符串的功能基本来自于string库. 字符串库中的一些函数是非常简单的: string.len(s) 返回字符串s的长度: string.rep(s, n) 返回重复n次字符串s的串:你使用string.rep("a", 2^20)可以创建一个1M bytes的字符串(比如,为了测试需要): string.lower(s)
-
LUA string库使用小结
1. string库中所有的字符索引从前往后是1,2,...;从后往前是-1,-2,... 2. string库中所有的function都不会直接操作字符串,而是返回一个结果 复制代码 代码如下: s = "[abc]" string.len(s) <==返回5 string.rep("abc", 2) <==返回"abcabc" string.lower("ABC") <==返回"a
-
Lua中string.len()使用指南
前言 今天是星期天,我还是不浪费大家的脑细胞了,直接来列举一个string家族中比较简单的函数,函数虽然简单,但是用处却很大,使用频率也很高,废话不多说,我们直接来看函数用法. 内容 string.len() 原型:string.len(s) 解释:返回所给字符串的长度,如果字符串中包含'\0',也会被统计为一个字符. Usage 首先新建一个文件将文件命名为lentest.lua然后编写如下代码: -- 一个常规字符串 local sourcestr = "This is a rainy da
-
Lua中的loadfile、dofile、loadstring、require用法实例
复制代码 代码如下: do local errorInfo = loadfile("test.lua"); --load code file if(errorInfo == nil) then print("load file failed"); else print("load file success"); local doInfo = dofile("test.lua") --complie the f
-
Lua loadstring函数用法实例
该函数的返回值是返回一个function,如果load失败,则返回nil 例子代码: 复制代码 代码如下: --i = 32 local i = 0 f = loadstring("i = 1 + i; print(i)"); g = function () i = 1 + i; print(i) end f() g() f操作的全局i,g操作的是局部i,因为,loadstring总是在全局环境中去编译它的字符串 loadstri
-
Lua中string.lower()使用指南
前言 今天我们总结的函数也比较简单,函数的作用的将所给字符串的中的大写字母转换成小写字母,这种操作往往出现在比较操作之前,比如验证码通常都是不区分大小写的,接下来我们一起看一下函数的用法. 内容 string.lower() 原型:string.lower(s) 解释:接收一个字符串,然后返回一个将字符串中大写字母转化为小写字母的字符串副本,除此之外其他字符都不会被改变,大写字母的定义依赖于当前的本地设置. Usage 首先我们新建一个文件将文件命名为lowertest.lua然后编写代码如下:
-
Lua中模块以及实现方法指南
从使用的角度来看,一个模块就是一个程序库,可以通过Lua自身提供的require来加载.然后便得到一个全局变量,表示一个table.这个table就是像一个名字空间,其内容就是模块导出的所有东西,例如函数和常量.简单的说,Lua中的模块就是一个table,table中可以包括任何东西.本文首先详细介绍模块相关的require函数,包括该函数的执行流程以及查找模块的路径,然后介绍了实现模块的三种方法,并给出相应的优缺点. require函数 该函数用来加载一个模块,即按指定的路径和传入的参数,查
-
Lua中的捕获机制和转换技巧介绍
捕获 捕获是这样一种机制:可以使用模式串的一部分匹配目标串的一部分.将你想捕获的模式用圆括号括起来,就指定了一个捕获. 在string.find使用捕获的时候,函数会返回捕获的值作为额外的结果.这常被用来将一个目标串拆分成多个: 复制代码 代码如下: pair = "name = Anna" _, _, key, value = string.find(pair, "(%a+)%s*=%s*(%a+)") print(key, value) --> na
-
Lua中操作字符串的基本方法整理
字符串是一个字符序列,以及控制字符.字符串可以用三种形式被初始化,其中包括: 单引号之间的字符 双引号之间的字符 [] 之间的字符[[和]] 对于上述三种形式的一个例子如下所示. 复制代码 代码如下: string1 = "Lua" print("\"String 1 is\"",string1) string2 = 'Tutorial' print("String 2 is",string2) string3 = [[&qu
-
Lua中的一些常用函数库实例讲解
前言 这篇文章将会来一些比较轻松的内容,就是简单的介绍一下Lua中几个常用的库.简单的说就是几个API的介绍.所以说,看起来比较容易,也没有多大的分量.就是纯粹的总结.使用库就是为了方便我们的开发,提高开发效率,同时也能保证代码的质量.希望大家以后也不要重复造轮子了. 数学库 数学库(math)由一组标准的数学函数构成.这里主要介绍几个常用的函数,其它的大家可以自行百度解决. 三角函数(sin,cos,tan--) 所有的三角函数都使用弧度单位,可以用函数deg(角度)和rad(弧度)来转换角度
-
Lua中的常用函数库汇总
lua库函数 这些函数都是Lua编程语言的一部分, 点击这里了解更多. assert(value) - 检查一个值是否为非nil, 若不是则(如果在wow.exe打开调试命令)显示对话框以及输出错误调试信息 collectgarbage() - 垃圾收集器. (新增于1.10.1) date(format, time) - 返回当前用户机器上的时间. error("error message",level) - 发生错误时,输出一条定义的错误信息.使用pcall() (见下面)捕捉错误
随机推荐
- 详解angular element()方法使用
- Lua中table里内嵌table的例子
- InputStreamReader 和FileReader的区别及InputStream和Reader的区别
- java 多态性详解及简单实例
- js实现旋转木马效果
- Node.js中的事件驱动编程详解
- 取得一定长度的内容,处理中文
- 在JSP页面中获取当前日期时间的方法
- MySQL中索引优化distinct语句及distinct的多字段操作
- JavaScript实现设计模式中的单例模式的一些技巧总结
- CentOS5 + rsync 同步2台服务器的文件
- PHP session会话的安全性分析
- Android自定义View圆形进度条控件(三)
- CentOS中使用virtualenv搭建python3环境
- php动态生成版权所有信息的方法
- apache下支持asp.net的实现方法
- 浅谈用Python实现一个大数据搜索引擎
- 对Angular中单向数据流的深入理解
- SSM框架中测试单元的使用 spring整合Junit过程详解
- 如何封装了一个vue移动端下拉加载下一页数据的组件