小编Muc*_*ker的帖子

Lua 模式匹配仅返回第一个匹配

我不知道如何让 Lua 返回特定模式匹配的所有匹配项。

我有以下正则表达式,它可以工作并且非常基本:

.*\n
Run Code Online (Sandbox Code Playgroud)

这只是每行分割一个长字符串。

Lua 中的等价物是:

.-\n
Run Code Online (Sandbox Code Playgroud)

如果您在正则表达式网站中针对以下文本运行上述内容,它将找到三个匹配项(如果使用全局标志)。

Hello
my name is
Someone
Run Code Online (Sandbox Code Playgroud)

如果不使用全局标志,它将仅返回第一个匹配项。这是LUA的行为;就好像它没有全局开关并且只会返回第一个匹配项。

我的确切代码是:

local test = {string.match(string_variable_here, ".-\n")}
Run Code Online (Sandbox Code Playgroud)

例如,如果我在上面的测试中运行它,test将是一个只有一个项目(第一行)的表。我什至尝试使用捕获组,但结果是相同的。

我找不到一种方法让它返回所有匹配项,有谁知道这在 LUA 中是否可行?

谢谢,

lua lua-patterns

3
推荐指数
1
解决办法
1327
查看次数

Docker for Windows ENTRYPOINT - 不存在这样的文件,即使它存在

编辑:我重新编辑了原来的帖子,删除了我提出的一些废话和问题。我自己设法解决了这个问题,请参阅下面的答案

我的 Docker 发生了最奇怪的事情。现在,当我将使用该命令构建的 Docker 映像DOCKER BUILD作为容器运行时,会出现错误,提示ENTRYPOINT无法找到其中的文件。

[FATAL tini (7)] exec /bin/start_vsftpd.sh failed: No such file or directory 
Run Code Online (Sandbox Code Playgroud)

这些图像不是我的,它们是来自 GITHUB 的 GIT 存储库,100% 有效,我过去已经运行过几次,没有出现任何问题。现在它错误地指出这些文件不存在,即使它们存在。

在此输入图像描述

windows docker

3
推荐指数
1
解决办法
1039
查看次数

标签 统计

docker ×1

lua ×1

lua-patterns ×1

windows ×1