Lua:执行字符串并将命令的输出存储在变量中

2023-12-04

我有一个 Lua 脚本,它接收字符串中的函数调用。我需要执行该调用并将输出作为变量中的字符串检索,以便稍后将其发送到某个地方。

例如,我将收到字符串"json.encode('{1:1, 2:3, 5:8}')"。我想执行它并获取一个具有该值的变量ret = json.encode('{1:1, 2:3, 5:8}').

我尝试过以多种不同的方式使用 loadstring,包括我的一种方式在文档中找到,但我无法让它按我想要的方式工作:

    > s = "json.encode('{1:1, 2:3, 5:8}')"
    > ret = assert(loadstring(s))()
    > print(ret)
    nil

我知道该字符串正在执行,因为如果我设置s = print(json.encode('{1:1, 2:3, 5:8}'))我看到了输出。我只是不知道如何获取变量的输出。

Thanks!


我只是找到了一种方法来做我想做的事,但我仍然想知道你们是否能找到任何缺陷/更好的方法来做到这一点,因为我对 Lua 很陌生:

    > s = "json.encode('{1:1, 2:3, 5:8}')"
    > s2 = "return("..s..")"
    > ret = assert(loadstring(s2))()
    > print(ret)
    "{1:1, 2:3, 5:8}"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lua:执行字符串并将命令的输出存储在变量中 的相关文章

  • 如何使用 Unicode 十六进制值 (UTF-16) 在 Swift 中表达字符串

    我想在 Swift 中使用十六进制值编写 Unicode 字符串 我已阅读文档 https developer apple com library prerelease ios documentation Swift Conceptual
  • 从 Perl 中的字符串中删除标点符号

    如何从 Perl 中的字符串中删除除空格之外的所有标点符号 s punct g
  • 基本 C++ 文本对齐

    我正在尝试编写一个程序 该程序从文件中获取输入行并使其恰好为 80 个字符 假设输入行始终小于 80 然后打印该行 这是通过在以下标点符号后添加最多两个空格来完成的 如果一行少于 41 个字符 则不加修改地打印 如果该行仍然不是 80 个字
  • django如何将字符串转换为模块?

    我试图了解 django 的另一个神奇之处 它可以将字符串转换为模块 In settings py INSTALLED APPS声明如下 INSTALLED APPS django contrib auth django contrib c
  • Bash:循环遍历字符串数组后无法读出带空格的字符串

    我正在使用循环读取数组的内容 该数组包含名为 music 的目录层次结构中的所有目录和文件 内容是 find 命令先前输出的字符串 这个想法是根据流派 艺术家和标题将 directory contents 中每个数组元素的完整目录路径分成子
  • 为什么 Haskell 的默认字符串实现是一个字符链接列表?

    Haskell 默认值的事实String众所周知 实现在速度和内存方面都效率不高 据我所知 lists一般来说 在 Haskell 中实现为单链表 并且适用于大多数小型 简单数据类型 例如Int 这似乎不是一个好主意 但是对于String这
  • 如何查找给定字符串中仅出现一次的第一个字符[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何释放字符串未使用的容量

    我正在程序中处理很多字符串 这些字符串数据在读入我的程序后的整个生命周期内都不会改变 但由于 C 字符串保留了容量 因此浪费了大量肯定不会被使用的空间 我尝试释放这些空间 但没有成功 以下是我尝试过的简单代码 string temp 123
  • 如何在 Swift 中证明 String 类型的“写时复制”

    正如标题所说 我试图证明自己 Swift 中的 String 支持 COW copy on write 但我找不到证据 在尝试以下代码后 我在数组和字典上证明了 COW func address of object UnsafeRawPoi
  • Bash - 在 perl 正则表达式中使用变量以及匹配组

    这是我在 stackoverflow 上的第一篇文章 如果我错过了一些重要的内容 请原谅我 我目前遇到以下问题 目标是根据我准备的文件列表动态替换端口号find 这些文件中的所有端口均以数字 4 开头 有 5 位数字 现在是棘手的部分 我只
  • PHP 中的多行字符串文字

    考虑 xml l xml vv echo xml 这将回响vv 为什么以及如何为诸如此类的事情执行多行字符串文字简单XML https en wikipedia org wiki SimpleXML etc Well xml l vv Wo
  • 替换 JSON 中的转义字符

    我想用空格替换 JSON 字符串中的 字符 我怎样才能做到这一点 我发现从 JSON 字符串中删除所有转义字符的最简单 最好的方法是将字符串传递到正则表达式 Unescape 方法 此方法返回一个没有转义字符的新字符串 甚至删除了 n t
  • 如何用C++解析复杂的字符串?

    我试图弄清楚如何使用 解析这个字符串sstream 和C 其格式为 string int int 我需要能够将包含 IP 地址的字符串的第一部分分配给 std string 以下是该字符串的示例 std string 127 0 0 1 1
  • C 中什么函数可以替换字符串中的子字符串?

    给定一个 char 字符串 我想查找所有出现的子字符串并将其替换为备用字符串 我没有看到任何简单的函数可以实现这一点
  • boost::algorithm::join 的一个很好的例子

    我最近想用提升 算法 加入 http www boost org doc libs 1 41 0 doc html string algo reference html header boost algorithm string join
  • Java中如何对对象数组进行排序?

    我的数组不包含任何字符串 但它包含对象引用 每个对象引用都通过 toString 方法返回名称 id 作者和发布者 public String toString return name n id n author n publisher n
  • 创建具有动态更新变量的数组

    我有一些 PHP 变量 它们的名称直接链接到它们包含的函数 是否有办法自动创建这些变量 以便我可以使用所有变量 00 200 这就是我现在正在做的事情 regdays00 is user reg matured 00 regdays02 i
  • 如何在 Ruby on Rails 中不使用 eval 将字符串转换为哈希值? [复制]

    这个问题在这里已经有答案了 这里是string需要转换成hash status gt label gt Status collection gt return misc definitions project status 我们不能使用ev
  • 如何将从 date_parse 返回的日期数组转换回日期字符串

    我有一个由 php 例程 date parse 返回的格式的日期数组 我需要将此日期数组转换回日期字符串 我正在寻找一个与 date parse 例程相反的函数 这是一个接受日期数组作为参数并返回日期字符串的函数 http php net
  • 在 C++ 中查找精确的字符串匹配

    这是我用来检测 txt 文件中一行中的字符串的代码 int main std ifstream file C log txt std string line while file eof while std getline file lin

随机推荐

  • XSLT:删除多余的空白字符,保留节点

    所以我的问题是这样的 我有一个在很多地方使用的转换文档 并且通常处理许多小型格式转换 在一种特定情况下 我需要从结果中删除空格 输出看起来像这样 n 某事非常重要 带有上标注释1 n 我尝试过以下变体
  • SSDT 部署后脚本

    我想在部署后忽略部署后脚本 在 SSDT 中将特定于分支的部署后脚本部署到生产环境后 如何存档 删除该脚本 有没有最佳实践 我以前所做的就是创建日志表并存储所有执行的脚本 这是表结构 CREATE TABLE dbo publish scr
  • 流媒体音频 (YouTube)

    我正在写一个CLI音乐媒体平台 其中一项功能是您可以直接从 CLI 播放 YouTube 视频 我真的不知道该怎么做 但这听起来是最合理的 我将使用那些可以从 YouTube 下载音乐的网站 例如 http keepvid com 然后我直
  • 按下 UIbutton 后如何更改 UIbutton 标题?

    按下 btn1 后 我无法更改 UIButton btn2 的标题 当我使用 definition settitle Show Word forState UIControlStateNormal它改变了原来的btn1 这是供您审核的代码
  • 当我使用 ISNUMERIC() 时,为什么转换失败?

    SELECT CAST Revenue Size M AS float FROM Raw Data A WHERE ISNUMERIC Revenue Size M 1 我收到错误 将数据类型 nvarchar 转换为 float 时出错
  • Delphi 2009 的通用链表

    我正在查看 Generics Collections 并注意到没有链接列表 当然 它们制作起来很简单 但我觉得很奇怪没有一个 或者我只是错过了 与新的现代数据结构相比 链表是否已经过时了 或者是否需要通用的链表 有人知道其中一个吗 你知道吗
  • 带有 Flutter 和 Firestore 的 GridView

    我正在尝试从云 Firestore 记录制作一个简单的 GridView 我遵循了很多视频教程 但没有成功 这是代码 import package flutter material dart import package cloud fir
  • Camera.main空引用异常

    我是 C 和 Unity 的新手 我已经阅读了整个论坛 但我仍然陷入困境 这是我收到的错误 NullReferenceException 未将对象引用设置为对象的实例 ClickToMove Update 位于 Assets Scripts
  • 具有隔离范围版本的指令冲突

    在我的 Angular 应用程序中 我有一个指令 可编辑 它是在 Angular 版本 1 2 0 rc 2 上编写的并且运行良好 但是当我将框架升级到版本 1 2 13 时 指令损坏了 我检查了其他版本的功能 但很困惑 因为指令仅适用于三
  • 调用一个不带参数的函数,尽管它需要一个 [K&R-C]

    它是 K R C 代码如下 http v6shell org history if c 看main 方法 有这一行 if exp 但函数 exp 被声明为 exp s 所以需要一个论证 为什么这有效 你为什么要这样做 归根结底 这是 Uni
  • Swift 4 中的 UIImagePickerController 内存泄漏 Xcode 9

    在我的应用程序中 当我使用UIImagePickerController 我以为是我的应用程序的问题 但是在搜索解决方案时我找到了Apple的示例 并且我还发现该示例具有相同的内存泄漏 您可以在以下 URL 中找到该示例 https dev
  • 为什么此类型约束对于 List[Seq[AnyVal 或 String]] 失败

    我正在自学Scala并遇到了这个 继以下优秀答案之后Link 假设我有以下代码 object Example extends App val x Seq 1 2 3 val y Seq 1 2 3 class Or A B implicit
  • 在视图中运行时,sql 查询需要更多时间

    HI all 我有一个巨大的 sql 查询 当我将该查询放入存储的 Proc 中时 执行需要 5 秒 我将其作为查询运行 需要 4 5 秒 但当我在视图中运行它时 需要 5 分钟 请告知为什么它在视图中运行那么慢 sql查询如下 CREAT
  • 由 CamanJS 修改的 KineticJS 画布

    我正在尝试申请CamanJS过滤到使用 KineticJS 创建的画布 有用 Caman creator canvas function this lomo render 应用 CamanJS 过滤器后 我尝试使用画布执行某些操作 例如 拖
  • 致命错误:base.facebook.php 中 facebook api 3.0.0 中未捕获 CurlException SSL 连接超时

    我对所有版本的 php sdk 都遇到相同的 ssl 错误 我增加了超时值 但仍然出现同样的问题 但是当我在不同的服务器上尝试相同的示例代码时 它运行良好 我认为可能存在一些与服务器相关的问题 例如 libcurl 或 openssl 的版
  • 为什么 django-nose 没有在我的模型中运行文档测试?

    我正在尝试将 doctests 与 django nose 一起使用 我的所有文档测试都在运行 除了模型中的任何文档测试 除非它是抽象的 class TestModel1 models Model gt gt gt print pass p
  • 如何为所有 XMLHTTPRequest 设置默认标头

    问题描述 我们正在运行 Kibana 4 3 服务 我不想修改源代码 目标是添加一个加密令牌 将其称为 A Token 到浏览器向 Kibana 发出的每个 Ajax 请求 背景 Kibana 服务由 nginx 代理 当用户向 Kiban
  • 用前后值的平均值填充包含 NaN 的单元格

    我想用缺失值之前和之后单元格的平均值填充 pandas 数据框中的缺失值 因此 如果它是 1 NaN 3 则 NaN 值将为 2 因为 1 3 2 我找不到任何方法可以用 Pandas 或 Scikit learn 来做到这一点 有什么办法
  • 通过 lmer 函数的混合效应的异方差模型

    我正在调整一个混合效应模型 由于观察到的异方差性 有必要包含一个效应来适应它 因此 使用lme的功能nlme包 这个问题很容易解决 看下面的代码 library nlme library lme4 Model1 lt lme log Var
  • Lua:执行字符串并将命令的输出存储在变量中

    我有一个 Lua 脚本 它接收字符串中的函数调用 我需要执行该调用并将输出作为变量中的字符串检索 以便稍后将其发送到某个地方 例如 我将收到字符串 json encode 1 1 2 3 5 8 我想执行它并获取一个具有该值的变量ret j