求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
 
 
     
   
    全部     工程实例     标准规范     名校讲义     知识库    
 
 

Lua 教程
Lua开发环境
Lua基本语法
Lua变量
Lua数据类型
Lua运算符
Lua循环
Lua决策
Lua函数
Lua字符串
Lua数组
Lua迭代器
Lua表格
Lua模块
Lua元表
Lua协同程序
Lua文件I/O
Lua错误处理
Lua 高级教程
Lua调试
Lua垃圾收集
Lua面向对象
Lua Web编程
Lua数据库/MYSQL操作
Lua游戏编程
Lua标准库
 
 

Lua字符串

    您可以捐助,支持我们的公益事业。

金额: 1元 10元 50元

姓名:

邮件:

电话:

公司:

说明:

认证码: 验证码,看不清楚?请点击刷新验证码 必填



 
 捐助

字符串是一个字符序列,以及控制字符。字符串可以用三种形式被初始化,其中包括:

单引号之间的字符

双引号之间的字符

[] 之间的字符[[和]]

对于上述三种形式的一个例子如下所示。

string1 = "Lua"
print(""String 1 is"",string1)
string2 = 'Tutorial'
print("String 2 is",string2) string3 = [["Lua Tutorial"]]
print("String 3 is",string3)

当我们运行上面的程序,会得到下面的输出。

"String 1" is	Lua
String 2 is Tutorial
String 3 is "Lua Tutorial"

转义字符序列中使用字符串来改变字符的正常解释。例如打印双引号(“”)在上面的例子中,我们已经使用“转义序列,并且其使用列于下表中。

字符串操作

Lua支持字符串操作字符串:

现在,让我们深入到几个例子,看这些字符串操作函数的行为。

案例操作

用于操纵字符串转换大写和和小写的样品代码如下。

string1 = "Lua";
print(string.upper(string1))
print(string.lower(string1))

当我们运行上面的程序,会得到下面的输出。

LUA
lua

替换子字符串

与另一个替换一个字符串的出现次数示例代码如下。

string = "Lua Tutorial"
-- replacing strings
newstring = string.gsub(string,"Tutorial","Language")
print("The new string is",newstring)

当我们运行上面的程序,会得到下面的输出。

The new string is	Lua Language

查找和反转

查找字符串的索引和扭转字符串中的示例代码如下。

string = "Lua Tutorial"
-- replacing strings
print(string.find(string,"Tutorial"))
reversedString = string.reverse(string)
print("The new string is",reversedString)

当我们运行上面的程序,会得到下面的输出。

5	12
The new string is lairotuT auL

格式化字符串

在我们的编程很多时候,我们可能需要在一个格式化的方式进行打印的字符串。可以使用字符串。格式化函数格式化输出,如下图所示。

string1 = "Lua"
string2 = "Tutorial"
number1 = 10
number2 = 20
-- Basic string formatting
print(string.format("Basic formatting %s %s",string1,string2))
-- Date formatting
date = 2; month = 1; year = 2014
print(string.format("Date formatting %02d/%02d/%03d", date, month, year))
-- Decimal formatting
print(string.format("%.4f",1/3))

当我们运行上面的程序,会得到下面的输出。

Basic formatting Lua Tutorial
Date formatting 02/01/2014
0.3333

字符和字节表示

字符和字节表示一个示例代码,用于从字符串转换字符串内部表示,反之亦然。

-- Byte conversion
-- First character
print(string.byte("Lua"))
-- Third character
print(string.byte("Lua",3))
-- first character from last
print(string.byte("Lua",-1))
-- Second character
print(string.byte("Lua",2))
-- Second character from last
print(string.byte("Lua",-2)) -- Internal Numeric ASCII Conversion
print(string.char(97)

当我们运行上面的程序,会得到下面的输出。

76
97
97
117
117
a

其它常用函数

常见的字符串操作,包括字符串连接,找到字符串,并在次重复相同的字符串多次长度。这些操作在下面例子中给出。

string1 = "Lua"
string2 = "Tutorial"
-- String Concatenations using ..
print("Concatenated string",string1..string2) -- Length of string
print("Length of string1 is ",string.len(string1)) -- Repeating strings
repeatedString = string.rep(string1,3)
print(repeatedString)

当我们运行上面的程序,会得到下面的输出。

Concatenated string	LuaTutorial
Length of string1 is 3
LuaLuaLua

    您可以捐助,支持我们的公益事业。

金额: 1元 10元 50元

姓名:

邮件:

电话:

公司:

说明:

认证码: 验证码,看不清楚?请点击刷新验证码 必填



 
 捐助