string - 在不知道字符串长度的情况下查找字符串的子字符串

标签 string lua

我有一个字符串 x:x = "{abc}{def}{ghi}" 我需要打印第二个 { 和第二个 } 之间的字符串,在本例中为 def。在不知道字符串长度的情况下如何做到这一点?例如,字符串 x 也可以是 {abcde}{fghij}{klmno}"

最佳答案

这是模式匹配有用的地方:

local x = "{abc}{def}{ghi}"
local result = x:match(".-{.-}.-{(.-)}")
print(result)

.- 匹配零个或多个字符,非贪婪。整个模式 .-{.-}.-{(.-)} 捕获第二个 { 和第二个 } 之间的内容。

关于string - 在不知道字符串长度的情况下查找字符串的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29324747/

相关文章:

c++ - 如何从字符串创建 lua 表?

tcp - TCP 选项的解析器

lua - 我应该使用带有 docker 的 Tarantool Cartridge 应用程序设置网络地址吗?

c++ - luabind 没有启动我定义的功能

string - java十进制分隔符

c++ - 在运行时使用 C++ 使用转义序列

PHP 不区分大小写的 explode()

c# - 内插字符串的原始类型是什么?

C 字符数组的大小

sockets - lua http.request 返回尝试索引全局 'http'(一个 nil 值)