© 版权声明:本文为博主原创文章,转载请注明出处

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字符串的更多相关文章

  1. Lua学习---编译生成lua和luac

    众所周知,Lua是一种强大的脚本语言,并且这种语言是用C语言实现的.为什么要学习这门语言?因为它可以增强我看C语言代码的功底. 我下的Lua版本是Lua5.3,关于Lua5.3的简介如下: http: ...

  2. Lua学习2 Lua小框架的搭建

    看了上一篇Lua环境搭建具体http://blog.csdn.net/liuwumiyuhuiping/article/details/9196435 为了方便学习. 具体新开始搭建一下学习的小框架. ...

  3. Lua学习八----------Lua运算符

    © 版权声明:本文为博主原创文章,转载请注明出处 1.Lua运算符: - 算术运算符:+(加法).-(减法).*(乘法)./(除法-取整).%(除法-取余).^(乘幂).-(负号) - 关系运算符:= ...

  4. Lua学习四----------Lua变量

    © 版权声明:本文为博主原创文章,转载请注明出处 1.Lua变量 - 变量在使用前,必须在代码中进行声明,即创建该变量 - 编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值 ...

  5. Lua学习三----------Lua数据类型

    © 版权声明:本文为博主原创文章,转载请注明出处 Lua数据类型 - Lua是动态类型语言,不需要为变量定义类型,只需要为变量赋值 - Lua有8中基本数据类型:nil.boolean.number. ...

  6. lua学习:lua中“类”的实现

    在之前的面试遇到考用lua实现类的题目.现在就补补这块知识点. 我们都知道Lua中的table是一个对象.拥有状态,拥有self,拥有独立于创建者和创建地的生命周期. 一个类就是一个创建对象的模具.L ...

  7. Lua学习十一----------Lua迭代器

    © 版权声明:本文为博主原创文章,转载请注明出处 Lua迭代器 - 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址 - Lu ...

  8. Lua学习十----------Lua数组

    © 版权声明:本文为博主原创文章,转载请注明出处 1.LUA数组 - 一维数组 - 多维数组 2.array.lua -- 一维数组 print("一维数组") array1 = ...

  9. Lua学习七----------Lua函数

    © 版权声明:本文为博主原创文章,转载请注明出处 1.Lua函数 - 完成指定的任务,这种情况下函数作为调用语句使用 - 计算并返回值,这种情况下函数作为赋值语句的表达式使用 - Lua函数可以返回多 ...

随机推荐

  1. Web系统从Oracle迁移至MySQL

    前两天领导给了个活,数据库迁移,原来的系统是用的Oracle数据库,现在要改成MySql,当时没多想就接下来了,原来的系统用的框架式SSI,于是大概想了下需要作调整无非以下几点 第一 数据库迁移 第二 ...

  2. Flask request获取参数问题

    https://www.jianshu.com/p/ecd97b1c21c1 https://blog.csdn.net/lovebyz/article/details/52244330 https: ...

  3. PowerDesigner反向生成数据库模型(MySql篇)

    目录: 数据库的反向生成模型 模型的Cooment注释显示 步骤一:下载odbc驱动并进行安装: (1)下载 mysql-connector-odbc-5.3.4-win32 注意:不管电脑是32位, ...

  4. arduino ide的串口权限解决

    刚刚到手一个Arduino uno R3的板子,windows下arduino IDE的串口正常使用,linux下却出现权限问题,解决方案如下:(以下操作使用超级用户) 1.查看设备所在的组ls -l ...

  5. jdk、maven、tomcat环境变量配置

    1.jdk 新建环境变量: JAVA_HOME:C:\Program Files\Java\jdk1.8.0_91 CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\li ...

  6. hdu 5698(杨辉三角的性质+逆元)

    ---恢复内容开始--- 瞬间移动 Accepts: 1018 Submissions: 3620 Time Limit: 4000/2000 MS (Java/Others) Memory Limi ...

  7. (二)Python selenium

    chromedriver版本    支持的Chrome版本 v2.29                     v56-58v2.28                     v55-57v2.27  ...

  8. jemalloc原理分析

    netty4引入了内存池的概念,它的主要思想源自于jemalloc,由于难以理解netty中这一块的代码,我决定先看一看网上的相关文章 官方git jemalloc原理分析 jemalloc和内存管理 ...

  9. 批量Kill多个进程

    ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9 管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入.下 ...

  10. Codeforces Gym 101194C Mr. Panda and Strips(2016 EC-Final,区间DP预处理 + 枚举剪枝)

    题目链接  2016 EC-Final 题意  现在要找到数列中连续两个子序列(没有公共部分).要求这两个子序列本身内部没有重复出现的数.   求这两个子序列的长度的和的最大值. 首先预处理一下.令$ ...