Lua string.upper()

Lua string.upper()_第1张图片
大小写转换.png

前言#

我想大家看到今天的的函数名也知道他的作用了吧,你猜的肯定没错,这个函数就是所给字符串中的小写字母转换成大写字母,这和string家族中的函数string.lower()是恰恰相反的,接下来我们一起来简单看一下这个函数的用法。

内容#


string.upper()##

  • 原型:string.upper(s)
  • 解释:接收一个字符串,然后返回一个将字符串中大写字母转化为小写字母的字符串副本,除此之外其他字符都不会被改变,大写字母的定义依赖于当前的本地设置。

Usage##

  • 首先我们新建一个文件将文件命名为uppertest.lua然后编写代码如下:
-- 源字符串
local sourcestr = "ADGdfhhjfhjafhdf~fa\000fFAKLDSFklj897890"
print("\nsourcestr is "..sourcestr)

-- 去掉`\0`的影响
local q_sourcestr = string.format("%q", sourcestr)
print("\n\q_sourcestr is "..q_sourcestr)

-- 使用函数转换
local upperstr = string.upper(sourcestr);
print("\n\upperstr is "..upperstr)

-- 将结果去掉`\0`影响
local q_upperstr = string.format("%q", sourcestr)
print("\n\q_upperstr is "..q_upperstr)

  • 运行结果
Lua string.upper()_第2张图片
string_upper.png

总结#

  • 由前两组结果的对比可以看出,普通的字符串如果遇到字符"\0"时将会被截断,想要不截断那就需要使用格式符%q来处理,具体方法参见前几篇文章Lua string.format()。
  • 由4组结果对比可以看出,函数string.upper()不会在遇到"\0"时就被截断,而是继续处理直到最后一个字符。
  • 在这个函数使用之前可以先和函数sting.lower()对比一下,选择最合适的转换方向。

你可能感兴趣的:(Lua string.upper())