Lua中计算、执行字符串中Lua代码的方法

 更新时间:2015年05月05日 09:00:38   投稿:junjie  
这篇文章主要介绍了Lua中计算、执行字符串中Lua代码的方法,类似JavaScript中eval函数的功能,在Lua中也可以实现,需要的朋友可以参考下

一、Lua中执行字符串

运行过程中有个问题,我有个字符串,是一个数学表达式,如何计算这个字符串表达式的值呢?
比如,local param = "7*100", 我需要的结果其实是700,但是怎么样直接计算出这个值呢?方法如下

字符串前面 加个 "return"
然后loadstring以后得到一个function
然后执行获得700的返回值,这样通过转化,得到的结果如下:

二、以字符串形式执行Lua代码

有时候,我们在代码中希望能够动态的切换上下文,改变程序的处理的流程,这时候,我们就需要在按照自己的意志来生成一些代码,这时候,我们就需要从字符串中来执行一些Lua代码

在我们的项目我希望,我可以从服务器上下来一个可以执行的lua代码,使用此段代码来更新项目的资源,从而,避免是先有鸡还是先有蛋的问题

复制代码 代码如下:

--Defining a string to use as function later
funcStr = "print('test')"
--Running it directly
loadstring(funcStr)()
--Defining a function from the string and running it
func = loadstring(funcStr)
func()

相关文章

  • Lua的内存管理浅析

    Lua的内存管理浅析

    这篇文章主要介绍了Lua的内存管理浅析,本文讲解了内存管理的相关知识,同时讲解了垃圾收集器的机制,需要的朋友可以参考下
    2014-09-09
  • 使用Lua来扩展C++程序的方法

    使用Lua来扩展C++程序的方法

    这篇文章主要介绍了使用Lua来扩展C++程序的方法,尽管更多的时候人们或许会想用C++来扩展Lua...需要的朋友可以参考下
    2015-07-07
  • Lua中操作字符串的基本方法整理

    Lua中操作字符串的基本方法整理

    这篇文章主要介绍了Lua中操作字符串的基本方法整理,是Lua入门学习中的基础知识,需要的朋友可以参考下
    2015-05-05
  • 浅谈Lua的面向对象特性

    浅谈Lua的面向对象特性

    这篇文章主要介绍了Lua的面向对象特性,包括对象和继承等传统OOP概念的几个关键知识点,需要的朋友可以参考下
    2015-05-05
  • Lua中编译执行代码相关的函数详解

    Lua中编译执行代码相关的函数详解

    这篇文章主要介绍了Lua中编译执行代码相关的函数详解的相关资料,需要的朋友可以参考下
    2015-04-04
  • Lua cjson模块编译笔记及错误解决方法

    Lua cjson模块编译笔记及错误解决方法

    这篇文章主要介绍了Lua cjson模块编译笔记及错误解决方法,本文着重讲解报错的解决方法,修改了Makefile文件解决了错误问题,需要的朋友可以参考下
    2015-06-06
  • Lua字符串库中的几个重点函数介绍

    Lua字符串库中的几个重点函数介绍

    这篇文章主要介绍了Lua字符串库中的几个重点函数介绍,本文讲解了几个最常用的强大的字符串函数find、match、gsub、gmatch,需要的朋友可以参考下
    2014-09-09
  • Lua判断数据类型的方法

    Lua判断数据类型的方法

    这篇文章主要介绍了Lua判断数据类型的方法,本文讲解了判断数据类型的方法和Lua脚本语言的8种基本数据类型,需要的朋友可以参考下
    2015-04-04
  • Lua中的常用函数库汇总

    Lua中的常用函数库汇总

    这篇文章主要介绍了Lua中的常用函数库汇总,本文罗列了lua库函数、数学函数、字符串库、表函数、Bit Functions,需要的朋友可以参考下
    2014-09-09
  • 基于 aLi Lua Web Server 的一个简单例子

    基于 aLi Lua Web Server 的一个简单例子

    这篇文章主要介绍了基于 aLi Lua Web Server 的一个简单例子的代码,非常简单,推荐给大家。
    2015-03-03

最新评论