Lua语法介绍(3)_字符串

字符串
string类型变量
字符串(即string),就是一串文本数据,可以存储你要的文本。
在第二节中,print出的数据就是一个字符串。
Lua 语言中字符串可以使用以下三种方式来表示:
单引号间的一串字符
双引号间的一串字符
[[和]]间的一串字符
你可以参考下面的例子来深入理解:
–双引号间的一串字符
str1 = “Lua”
–单引号间的一串字符
str2 = ‘Lua’
–[[和]]–间的一串字符
str3 = [[Lua]]
str4 = [[使用双括号时,甚至能包含换行数据
换行了
最后一行]]

–输出所有字符串
print(str1)
print(str2)
print(str3)
print(str4)
接下来你需要完成下面的练习:
新建三个变量s1、s2、s3
分别存入字符串数据:str、abc、233,使输出打印正确

–请在空白处补全代码

print(“s1,s2,s3的值:”,s1,s2,s3)
print(“s1,s2,s3的类型:”,type(s1),type(s2),type(s3))
转义字符
在上一节中,我们学习了如何声明字符串。
但是我们有时候会遇到一些特殊的问题,如:如何输出单引号和双引号?如何输出回车换行?
也许我们可以用下面的方式简单规避,输出单引号时,声明字符串用双引号括起来,像下面这样
str = “'”
同理,输出双引号时,声明字符串用单引号括起来,像下面这样
str = ‘"’
但是,这样会出现一个问题:如何同时显示单引号和双引号?这里就需要转义字符登场了。
转义字符用于表示不能直接显示的字符,比如后退键、回车键、等。
以 \ 开头的都是转义字符,下面时常用的转义字符格式:

转义字符 含义
\n 换行(LF),将当前位置移到下一行开头
\r 回车(CR),将当前位置移到本行开头
\ 反斜杠字符
’ 单引号
" 双引号
\0 空字符(NULL)
\ddd 1到3位八进制数所代表的任意字符
| \xhh|1到2位十六进制所代表的任意字符|
例如,如果我们想给str赋值一个单引号,一个双引号(‘"),那么我们可以这样写:
str = "’“”

下面需要你来完成一个简单的任务:
新建一个变量str,给str赋值为
ab\cd"ef’g\h]]
并打印出来

str = --补全代码
print(str)
–输出应为ab\cd"ef’g\h]]
string拼接
字符串和字符串可以相加吗?可以!我们可以用拼接符号来将两个独立的字符串拼起来。
我们使用…来表示字符串拼接符号,如下面的示例代码:
print(‘abc’…‘def’)
str1 = ‘123’
str2 = ‘999’
print(str1…str2)
下面你要完成这个任务:
已知三个字符串变量s1、s2、s3
请将他们按顺序拼接起来,存入all,并使用print输出结果

s1,s2,s3 = “aaa”,“bbb”,“ccc”
all = --请补全代码
print(all)
number转string
上面一节学习了如何拼接字符串,这个方法固然很好用,但是有时候我们会遇到一个需求,那就是把number类型的变量和string类型的变量拼接起来,组成一个新的string
比如下面的变量n和s,如何拼接起来呢?
n = 123
s = ‘m/s’
我们可以直接将number类型的变量n转换成string类型的值,这样就可以拼接了
使用tostring(value)函数即可实现这一操作:

n = 123
s = ‘m/s’

result = tostring(n)…s
print(result)
下面你要完成这个任务:
已知三个变量n1、s、n2
然后将他们按顺序拼接起来,存入变量result,使输出结果正确
小提示:在某些情况下,Lua会自动将number类型转换成string类型

n1,s,n2 = 1,“abc”,2
result = --请补全代码
print(result)
string转number
上面一节学习了如何将number转成string,这一节我们来学习如何将string转成number
比如下面的变量s,存储的内容是一个字符串,但是代表了一个数字,如何转成number再与n相加计算呢?

n = 123
s = ‘2333’
我们可以直接将string类型的变量s转换成number类型的值,这样就可以计算了

使用tonumber(value)函数即可实现这一操作:

n = 123
s = ‘2333’

result = tonumber(s) + n
print(result)
下面你要完成这个任务:
已知三个字符串变量s1、s2、s3,其内容均为纯数字
请计算他们的算术和,赋值给新建的变量result,使下面代码输出正确结果

s1,s2,s3 = “11”,“12”,“100”
result = --请补全代码
print(result)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

l531798151

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值