前言
今天我们总结的函数也比较简单,函数的作用的将所给字符串的中的大写字母转换成小写字母,这种操作往往出现在比较操作之前,比如验证码通常都是不区分大小写的,接下来我们一起看一下函数的用法。
内容
string.lower()
原型:string.lower(s)
解释:接收一个字符串,然后返回一个将字符串中大写字母转化为小写字母的字符串副本,除此之外其他字符都不会被改变,大写字母的定义依赖于当前的本地设置。
Usage
首先我们新建一个文件将文件命名为lowertest.lua然后编写代码如下:
1
2
3
4
5
6
7
8
9
10
11
|
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"时就被截断,而是继续处理直到最后一个字符。