[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 @   点-滴  阅读(250)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示