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

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. shell变量的数值计算

    shell中常见的算术运算命令如下 1.(())  用于整数运算的常用运算符,效率很高 2.let 用于整数运算,类似于  (()) 3.expr  可用于整数计算,但还有很多其他的额外功能 4.bc ...

  2. Java EE 学习(7):IDEA + maven + spring 搭建 web(3)- 配置数据库

    参考: https://my.oschina.net/gaussik/blog/513444 注:在阅读本文前,请先阅读: Java EE 学习(5):IDEA + maven + spring 搭建 ...

  3. 【POJ3667】Hotel(线段树)

    题意:有n个依次编号的元素,要求维护以下两个操作: 1.询问整个数列中是否有长度>=x的连续的一段未被标记的元素,若无输出0,若有输出最小的开始编号ans并将[ans,ans+x-1]标记 2. ...

  4. C# 读取计算机CPU,HDD信息

    public string getCpuInfo() //读取CPU信息 { ManagementClass mobj = new ManagementClass("Win32_Proces ...

  5. 微信公众平台开发(71)OAuth2.0网页授权-摘抄

      微信公众平台开发 OAuth2.0网页授权认证 网页授权获取用户基本信息 作者:方倍工作室 微信公众平台最近新推出微信认证,认证后可以获得高级接口权限,其中一个是OAuth2.0网页授权,很多朋友 ...

  6. onCreate、onStart、onResume、onPause、onStop、onDestory(转)

    程序正常启动:onCreate()->onStart()->onResume();正常退出:onPause()->onStop()->onDestory() 一个Activit ...

  7. Scrapy笔记:持久化,Feed exports的使用

    首先要明确的是,其实所有的FeedExporter都是类,里面封装了一般进行io操作的方法.因此,要怎么输出呢?其实从技术实现来说,在生成item的每一步调用其进行储存都是可以的,只不过为了更加符合s ...

  8. 51nod 1006 最长公共子序列Lcs 【LCS/打印path】

    1006 最长公共子序列Lcs  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). ...

  9. Codeforces Round #450 (Div. 2) A. Find Extra One【模拟/判断是否能去掉一个点保证剩下的点在Y轴同侧】

    A. Find Extra One time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  10. Codeforces Round #315 (Div. 2)【贪心/重排去掉大于n的元素和替换重复的元素】

    B. Inventory time limit per test 1 second memory limit per test 256 megabytes input standard input o ...