Lua string 库经验分享: 在部门里用Lua实现了一个RichText富文本,主要用到了一些Lua的模式匹配,想到之前也有好几次使用Lua string库的经验,虽然不多,也没怎么读过Lua的源码,但还是想拿出来与人分享。 Lua的模式匹配极为强大,掌握之后使用起来非常有乐趣,但期间很可能会遇到很多问题。比如在下就在string.find上跌倒过无数次。 string.find 注意
转载 2024-03-30 08:15:11
74阅读
--->lua中字符串索引从前往后是1,2,……,从后往前是......,-2,-1      e.g: tmp = “abcd” ,tmp[1] =='a',tmp[2] =='b',tmp[-1] =='d',tmp[-2] =='c'. --->string库中所有的function都不会直接操作字符串,只返回一个结果。 ---&gt
转载 2024-04-16 21:18:37
62阅读
StringsLua 也支持字符串类型 (例如. 文本) . 创建字符串, 使用 "双引号" 或 '单引号' 引用文本即可: > print("hello") hello 我们可以采用下面方法声明字符串变量: > who = "Lua user" > print(who) Lua user 我们也可以使用 .. 操作符, 将字符串整合在一起: > print("hello
转载 2024-06-27 22:37:15
84阅读
    网上找了一些关于gsub模式匹配资料,但是都不全面细致,所以打算翻译官方文档。以下内容翻译自《Lua 5.3 Reference Manual》6.4.1 - Patterns。 ------ 我是一条分割线------    Lua中的模式匹配用正则表达式来描述,它被用于string.find, string
转载 2024-05-12 16:21:34
75阅读
最近在弄一个avg类型的游戏,游戏操作比较简单,但是用到大量纹理,对内存优化就有一定要求,ps:包体大小和内存占用没有直接关系,下面是从网上搜的一些相关文章,有些步骤比较复杂或者需要改动比较大的,就不介绍了。一、纹理缓存网上关于cocos的纹理优化方面文章基本都是中文版的,这篇介绍的很详细,但是有些操作步骤不太好用,原出处是英文版的。1.打印纹理占用情况,实时对比,cc.Director:getI
转载 2024-07-02 10:14:56
98阅读
string(字符串)字符串由一对双引号或单引号来表示string1="this is a string1" string2="this is string2" print(string1) print(string2) 也可以用2个方括号"[[]]"来表示“一块”字符串。html=[[ <html> <head></head> <body> &l
最近用lua在写工具,用到比较多lua模式匹配的东西,遇到挺多新鲜的东西,所以记录一下,希望也能给大伙一些帮助吧~我们知道string非常强大string.find(字符串查找) string.gsub(全局字符串替换) string.gfind(全局字符串查找) string.gmatch(返回查找到字符串的迭代器)等等。。。模式匹配基本都用得上了这些函数的用法我就不详细说了,大伙估计都知道的,
转载 2024-03-19 14:22:08
152阅读
lua string.find local s=[[{"weatherinfo":{"city":"石家庄","city_en":"shijiazhuang","date_y":"2012年4月24日","date":"","week":"星期二","fchh":"11","cityid":"1...
转载 2013-09-10 20:20:00
153阅读
2评论
lua string.find local s=[[{"weatherinfo":{"city":"石家庄","city_en":"shijiazhuang","date_y":"2012年4月24日","date":"","week":"星期二","fchh...
转载 2013-09-10 20:20:00
293阅读
2评论
lua string
原创 2022-09-03 00:48:25
141阅读
Lua内置库的实现(一)_string模块          Luastring库相较其它许多动态语言的string库来说,可谓短小精悍。不到千行C代码就实现了一个简单使用的字符串模式匹配模块。虽然功能上比正则表达式有所欠缺,但考虑到代码体积和功能比,这应该是一个相当漂亮的平衡(C 语言社区中常用的正则表达式库PCRE的个头整体比lua的实现还
转载 2024-05-02 23:41:19
92阅读
 如何打印出字节码:代码里做如下修改,把打印字节码的宏开关打开。y.tab.c18 行#define LISTING 0改为#define LISTING 1因为 PrintCode 的定义在调用之后,所以加个前置声明:做出下修改:y.tab.c329 行添加static void PrintCode (Byte *code, Byte *end);保证在 lua_parse 调用它的时
转载 2024-03-25 10:43:02
30阅读
由于原来安装的Lua,SciTe等都不能正常打开运行,决定重新下载安装。 (2)下载,安装LuaForWindows_v5.1.4-40.exe (2)安装完成后:开始-运行-cmd回车,输入lua,成功安装时会显示Lua的版本等信息。本人的是: Lua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio (3)VS2005下新建一个win32
转载 2024-07-22 10:21:43
21阅读
Lua 性能优化篇(全局与非全局)在代码运行前,Lua会把源码预编译成一种中间码,类似于Java的虚拟机。这种格式然后会通过C的解释器进行解释,整个过程其实就是通过一个while循环,里面有很多的switch...case语句,一个case对应一条指令来解析。自Lua 5.0之后,Lua采用了一种类似于寄存器的虚拟机模式。Lua用栈来储存其寄存器。每一个活动的函数,Lua都会其分配一个栈,这个栈用
转载 2024-04-23 15:31:12
105阅读
string库中功能最强大的函数是:string.find(字符串查找)string.gsub(全局字符串替换)string.gfind(全局字符串查找)string.gmatch(返回查找到字符串的迭代器)这些函数都是基于模式匹配的。与其他脚本语言不同的是,Lua并不使用POSIX规范的正则表达式[4](也写作regexp)来进行模式匹配。主要的原因出于程序大小方面的考虑:实现一个典型的符合P
转载 2024-03-14 18:02:07
25阅读
Lua5.3 笔记最近用skynet,sproto通讯,完全看不懂通讯二进制是怎么写的,发现都是string这个,string那个,完全理解不来。 于是查了一下string.pack的api,和之前别的语言里面用的writeByte,writeShort,writeUnsignedInt这样的写法完全是不一样的。 然后在此记录下来。参考字符串的Pack和UnpackAPIstring.pack,
转载 2024-05-01 21:32:48
165阅读
lua中,string库用的情况比较多,现在就lua中的string库做一个简单的总结 string中的常见函数有一下几个 1)string.byte   函数 string.byte 把字符串里的第 i 个字符转为 ASCII 编码,默认是输出第一个字符的编码(只有一个参数的 话) string.byte (s [, i [, j]]) 例如:''' print(string.by
转载 2024-03-06 22:38:38
252阅读
string函数string.byte (s,[,i[,j]])返回字符串内部编码s[i],s[i+1],...,s[j]。i默认是1,j默认是i; 和|string.sub|规则相同。内部编码不一定可移植。 string.byte("hello",1,5) 在mac上返回104,101,108,108,111string.char (…)接收零个或多个整数。返回由参数编码组成的字符串
转载 2024-03-16 09:08:37
169阅读
由于lua是一个跨平台的脚本语言,会根据平台位数(16bitbit)、平台类型(linuxwindows)、语言标准(C89C99)、以及编译参数等开启预编译选项,导致基本数据结构的字长和类型会动态变化,以Tlinux2.2 x86_64 进行编译为基础进行分析介绍, lua版本5.3.4。并根据我们开发过程中一些常见的情景进行分析:基础数据结构Lua的基本数据表示方式是type + union的
转载 2024-03-27 05:36:05
85阅读
--[[serialize.lua声明序列化接口,并提供serialize和unserialize函数用于对Table对象进行序列化和反序列化操作Exported API:Example:--]]require "base.interface"Serializ...
转载 2013-01-24 11:21:00
627阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5