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

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. bzoj4380[POI2015]Myjnie dp

    [POI2015]Myjnie Time Limit: 40 Sec  Memory Limit: 256 MBSec  Special JudgeSubmit: 368  Solved: 185[S ...

  2. LESS CSS使用方法 , CSS也能跟JS一样玩

    本文转自  http://blog.csdn.net/xuyonghong1122/article/details/51986472 在使用CSS的时候,总会有这个想法 这个属性值老是重复写好烦 这个 ...

  3. UltraEdit快捷键大全-UltraEdit常用快捷键大全

    UltraEdit快捷键大全-UltraEdit常用快捷键大全 UltraEdit是一套功能强大的文本编辑器,可以编辑文本.十六进制.ASCII码,可以取代记事本,内建英文单字检查.C++及VB指令突 ...

  4. 小M的作物 最大权闭合子图

    题目大意 bzoj 3438 两个田\(A,B\) \(n\le 1000\)种作物的种子 第\(i\)个种子,种\(A\)价值\(a[i]\),种\(B\)价值\(b[i]\) 再给出\(m\)个子 ...

  5. MongoDB 查询语法

    转载 http://blog.163.com/lgh_2002/blog/static/440175262012052116455/ 详见官方的手册:http://www.mongodb.org/di ...

  6. requireJs杂项

    如果设置了baseUrl,那么baseUrl目录下的模块可以被加载,那么被加载之后的模块Id是什么?文件名吗?     入口函数的写法?是不是要执行,后面加()   中文网中指的优化工具是什么?   ...

  7. 【nginx】nginx的介绍

    Nginx 反向代理初印象 Nginx (“engine x”) 是一个高性能的HTTP和反向代理 服务器,也是一个IMAP/POP3/SMTP服务器.其特点是占有内存少,并发能力强,事实上nginx ...

  8. uva 177:Paper Folding(模拟 Grade D)

    题目链接 题意:一张纸,每次从右往左对折.折好以后打开,让每个折痕都自然的呈90度.输出形状. 思路:模拟折……每次折想象成把一张纸分成了正面在下的一张和反面在上的一张.维护左边和方向,然后输出.细节 ...

  9. CF501D Misha and Permutations Summation(康托展开)

    将一个排列映射到一个数的方法就叫做康托展开.它的具体做法是这样的,对于一个给定的排列{ai}(i=1,2,3...n),对于每个ai求有多少个aj,使得j>i且ai>aj,简单来说就是求a ...

  10. js计算数组中每个元素出现的次数

    计算数组中每个元素出现的次数 var names = ['Alice', 'Bob', 'Tiff', 'Bruce', 'Alice']; var countedNames = names.redu ...