[lua]紫猫lua教程-命令宝典-L1-01-04. 字符串数据

L1[字符串]01. 单引号与双引号

没什么说得

字符串:以双引号包含 或者单引号包含 或者[[]]包含

L1[字符串]02. 长文本内容

小知识:如果用[[]]包含字符串内容 但是字符串内容里面 包含]] [[一些误导得字符 和字符串标识[[]]冲突 如何 处理呢

zz=[[
hello world!]]  --字符串内得]]会干扰包含字符串[[]] 导致报错
]]
testlib.traceprint(zz)

处理办法

zz=[=[
hello world!]]  --把包含字符串得标识[[]] 变成[=[     ]=]  等号个数可以随意 danshi必须配对
]=]

testlib.traceprint(zz)

L1[字符串]03. 常见转义符

\r 回车

\n 换行

\t tab空格

\” 双引号

\’单引号

\\ 反斜杠

没什么说的


L1[字符串]04. 不常用转义符

小知识:lua下 可以用转义符来代表ascII 中各种符号 两种形式 \xxx==>xxx代表十进制数 就是说\跟着3位十进制数代表ascII对应字符 或者\xAA   A代表ascII得十六进制 就是说\x加2位十六进制数

http://ascii.911cha.com/  ASCII表

traceprint("\091")==》[  ASCII得十进制数值代表得[

testlib.traceprint("\x5B")==》[  ASCII得十六进制数值代表得[


小知识:lua先实现unicode库得内容 应该是很有用得 留心下就好 可以显示汉字在有些地方是很有用得

traceprint("\u{4e13}\u{7528}\u{4ee3}\u{7801}")===》代表[专用代码]四个汉字

L1[字符串]05. 连接符

[..]


注意:紫猫老师强烈建议我们使用字符串连接符得一个习惯

print(xx .. yy .. zz) --建议  .. 两边各空一个空格


小知识:连接符连接得不是字符串得时候 其他类型如何自动转化位字符串

Lua 中字符串的连接操作符写作两个点('..')。如果两个操作数都是字符串或都是数字,连接操作将以 §3.4.3 中提到的规则把其转换为字符串。否则,会调用元方法 __concat (参见 §2.4

如果是数值 会自动转化为字符串 然后再连接

traceprint(11.12 .. "ceshi" .. 22)

posted @ 2019-07-11 13:17  点-滴  阅读(243)  评论(0编辑  收藏  举报