Lua学习九----------Lua字符串
© 版权声明:本文为博主原创文章,转载请注明出处
1.Lua字符串
- ''单引号间的一串字符
- ""双引号之间的一串字符
- [[]]之间的一串字符
2.Lua转义字符

3.字符串操作
- string.upper(argument):将字符串全部转换成大写
- string.lower(argument):将字符串全部转换成小写
- string.gsub(mainString, findString, replaceString, num):替换字符串
- mainString:要替换的字符串
- findString:将被替换的字符串
- replaceString:要替换的字符串
- num:替换次数(可以忽略,替换全部)
- string.find(str, substr, index):在一个指定的字符串中搜索指定的内容并返回其具体位置,不存在返回nil
- str:指定的字符串
- substr:指定的内容
- index:索引(默认1)
- string.reverse(arg):将字符串反转
- string.format(...):格式化字符串
- string.char(args):将整型数字转成对应的字符并连接
- string.byte(args, index):将字符串转换成对应的ASCII码,index指定字符串,默认第一位
- string.len(args):计算字符串长度
- string.rep(args, n):拷贝字符串,n表示拷贝次数
- ..:连接两个字符串
4.string.lua
a = 'This is a string' -- ''字符串
b = "This is b string" -- ""字符串
c = [[This is c string]] -- [[]]字符串
print("a:" .. a)
print("b:" .. b)
print("c:" .. c) d = "Escape "
e = " character"
print("\n\"\\a\": " .. d .. "\a" .. e) -- \a(响铃-BEL-007)
print("\"\\b\": " .. d .. "\b" .. e) -- \b(退格-BS-008)
print("\"\\f\": " .. d .. "\f" .. e) -- \f(换页-FF-012)
print("\"\\n\": " .. d .. "\n" .. e) -- \n(换行-LF-010)
print("\"\\r\": " .. d .. "\r" .. e) -- \r(回车-CR-013)
print("\"\\t\": " .. d .. "\t" .. e) -- \t(水平制表-HT-009)
print("\"\\v\": " .. d .. "\v" .. e) -- \v(垂直制表-VT-011)
print("\"\\\\\": " .. d .. "\\" .. e) -- \\(反斜线字符-\-092)
print("\"\\'\": " .. d .. "\'" .. e) -- \'(单引号字符-'-039)
print("\"\\\"\": " .. d .. "\"" .. e) -- \"(双引号字符-"-034)
print("\"\\0\": " .. d .. "\0" .. e) -- \0(空字符-NULL-000) str = "This is test String"
result = string.upper(str) -- upper:将字符串转换成大写
print("\result = " .. result)
result = string.lower(str) -- lower:将字符串转换成小写
print("result = " .. result)
result = string.gsub(str, "s", "S", 2) -- gsub:替换字符串
print("result = " .. result)
result = string.find(str, "is", 1) -- find:搜索指定内容,并返回下标
print("the index of \"is\" in \"" .. str .. "\":", result)
result = string.reverse(str) -- reverse:字符串反转
print("result = " .. result)
result = string.format("result = %s", str) -- format:格式化字符串
print(result)
result = string.char(66, 77, 88, 99) -- char:将整型数字转成字符并连接
print("string.char(66, 77, 88, 99) = " .. result)
result = string.byte("qAzWsx", 3) -- byte:将指定字符转化成整数值
print("string.byte(\"qAzWsx\", 2) = " .. result)
result = string.len(str) -- len:计算字符串长度
print("str的长度: " .. result)
result = string.rep(str, 4) -- rep:将字符串复制n次
print("result = " .. result)
result = str .. " Hello" -- ..:连接两个字符串
print("result = " .. result)
5.效果预览

参考:http://www.runoob.com/lua/lua-strings.html
Lua学习九----------Lua字符串的更多相关文章
- Lua学习---编译生成lua和luac
众所周知,Lua是一种强大的脚本语言,并且这种语言是用C语言实现的.为什么要学习这门语言?因为它可以增强我看C语言代码的功底. 我下的Lua版本是Lua5.3,关于Lua5.3的简介如下: http: ...
- Lua学习2 Lua小框架的搭建
看了上一篇Lua环境搭建具体http://blog.csdn.net/liuwumiyuhuiping/article/details/9196435 为了方便学习. 具体新开始搭建一下学习的小框架. ...
- Lua学习八----------Lua运算符
© 版权声明:本文为博主原创文章,转载请注明出处 1.Lua运算符: - 算术运算符:+(加法).-(减法).*(乘法)./(除法-取整).%(除法-取余).^(乘幂).-(负号) - 关系运算符:= ...
- Lua学习四----------Lua变量
© 版权声明:本文为博主原创文章,转载请注明出处 1.Lua变量 - 变量在使用前,必须在代码中进行声明,即创建该变量 - 编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值 ...
- Lua学习三----------Lua数据类型
© 版权声明:本文为博主原创文章,转载请注明出处 Lua数据类型 - Lua是动态类型语言,不需要为变量定义类型,只需要为变量赋值 - Lua有8中基本数据类型:nil.boolean.number. ...
- lua学习:lua中“类”的实现
在之前的面试遇到考用lua实现类的题目.现在就补补这块知识点. 我们都知道Lua中的table是一个对象.拥有状态,拥有self,拥有独立于创建者和创建地的生命周期. 一个类就是一个创建对象的模具.L ...
- Lua学习十一----------Lua迭代器
© 版权声明:本文为博主原创文章,转载请注明出处 Lua迭代器 - 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址 - Lu ...
- Lua学习十----------Lua数组
© 版权声明:本文为博主原创文章,转载请注明出处 1.LUA数组 - 一维数组 - 多维数组 2.array.lua -- 一维数组 print("一维数组") array1 = ...
- Lua学习七----------Lua函数
© 版权声明:本文为博主原创文章,转载请注明出处 1.Lua函数 - 完成指定的任务,这种情况下函数作为调用语句使用 - 计算并返回值,这种情况下函数作为赋值语句的表达式使用 - Lua函数可以返回多 ...
随机推荐
- Web系统从Oracle迁移至MySQL
前两天领导给了个活,数据库迁移,原来的系统是用的Oracle数据库,现在要改成MySql,当时没多想就接下来了,原来的系统用的框架式SSI,于是大概想了下需要作调整无非以下几点 第一 数据库迁移 第二 ...
- Flask request获取参数问题
https://www.jianshu.com/p/ecd97b1c21c1 https://blog.csdn.net/lovebyz/article/details/52244330 https: ...
- PowerDesigner反向生成数据库模型(MySql篇)
目录: 数据库的反向生成模型 模型的Cooment注释显示 步骤一:下载odbc驱动并进行安装: (1)下载 mysql-connector-odbc-5.3.4-win32 注意:不管电脑是32位, ...
- arduino ide的串口权限解决
刚刚到手一个Arduino uno R3的板子,windows下arduino IDE的串口正常使用,linux下却出现权限问题,解决方案如下:(以下操作使用超级用户) 1.查看设备所在的组ls -l ...
- jdk、maven、tomcat环境变量配置
1.jdk 新建环境变量: JAVA_HOME:C:\Program Files\Java\jdk1.8.0_91 CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\li ...
- hdu 5698(杨辉三角的性质+逆元)
---恢复内容开始--- 瞬间移动 Accepts: 1018 Submissions: 3620 Time Limit: 4000/2000 MS (Java/Others) Memory Limi ...
- (二)Python selenium
chromedriver版本 支持的Chrome版本 v2.29 v56-58v2.28 v55-57v2.27 ...
- jemalloc原理分析
netty4引入了内存池的概念,它的主要思想源自于jemalloc,由于难以理解netty中这一块的代码,我决定先看一看网上的相关文章 官方git jemalloc原理分析 jemalloc和内存管理 ...
- 批量Kill多个进程
ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9 管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入.下 ...
- Codeforces Gym 101194C Mr. Panda and Strips(2016 EC-Final,区间DP预处理 + 枚举剪枝)
题目链接 2016 EC-Final 题意 现在要找到数列中连续两个子序列(没有公共部分).要求这两个子序列本身内部没有重复出现的数. 求这两个子序列的长度的和的最大值. 首先预处理一下.令$ ...