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

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. react 基础语法复习1- 搭建开发环境

    之前有看过阮一峰老师的react教程跟着做了一遍,学习了一下.好久没看,有点忘记了,这次跟着脚手架工具系统的复习一遍.顺便学习学习 react-router 和 redux 首先,脚手架工具我使用的是 ...

  2. AspNetPager分页控件的使用以及常见错误

    原文发布时间为:2009-05-25 -- 来源于本人的百度文章 [由搬家工具导入] 【Repeater采用AspNetPager分页成功↓】 using System;using System.Co ...

  3. 学习总结——JMeter做WebService接口功能测试

    用JMeter作WebService接口功能测试(可以借助SoapUI来完成) SoapUI里面的操作: Wsdl文件或链接导入或添加到SoapUI打开待测请求:运行请求:取URL  SOAPActi ...

  4. android的动态代码

    1,Android代码设置Shape,corners,Gradient  (http://blog.csdn.net/houshunwei/article/details/17392409) int ...

  5. 在 CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本

    MySQL 目前的最新版本是 5.7.11,在 Linux 下提供特定发行版安装包(如 .rpm)以及二进制通用版安装包(.tar.gz).一般情况下,很多项目都倾向于采用二进制通用安装包形式来进行安 ...

  6. Hdoj 2509 Be the Winner

    Diciption Let's consider m apples divided into n groups. Each group contains no more than 100 apples ...

  7. html特殊字符编码问题导致的细节问题

    今天在写前端html时,一个a标签的链接地址,由于链接地址需要给后台传参数,因此带了部分url参数: 在html源码里写的连接地址是: http://域名/bidder/noticesearch?no ...

  8. 如何部署和运行Scut服务器及游戏:Windows篇

    概述 Scut游戏引擎是一个永久免费的全脚本游戏服务器框架,采用MVC框架设计,简化数据库设计和编码工作:降低对开发人员的开发难度:同时提供了丰富的类库和API接口. 一.    安装环境 必须安装的 ...

  9. xampp添加 django支持

    apache配置文件中添加 WSGIScriptAlias /chatbot1 /Users/css/djangoprojects/chatbot1/chatbot1/wsgi.pyWSGIPytho ...

  10. 修改linux iptable规则

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT(允许80端口通过防火墙)-A INPUT -m state --sta ...