首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >替换字符串Lua上的最后逗号

替换字符串Lua上的最后逗号
EN

Stack Overflow用户
提问于 2022-02-25 15:47:06
回答 2查看 182关注 0票数 2

我有这根绳子

代码语言:javascript
运行
复制
Apples, Oranges, Grapes

如何将最后一个逗号替换为

对模式还没有足够的了解,但我尝试了几种方法,例如

代码语言:javascript
运行
复制
str:gsub(",$", "and", 1)

难道不是认为神奇的字符$从结束->开始读取字符串吗?

我的问题是因为我使用table.concat连接数组。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-02-25 16:01:24

您的桌子:

代码语言:javascript
运行
复制
local t = {"Apples", "Oranges", "Grapes"}

方法1:使用“and”连接最后一项:

代码语言:javascript
运行
复制
local s = #t > 1 
          and table.concat(t, ", ", 1, #t-1).." and "..t[#t] 
          or  table.concat(t, ", ")
print(s)  --> Apples, Oranges and Grapes

方法2:替换最后一个逗号:

代码语言:javascript
运行
复制
local s = table.concat(t, ", ")
s = s:gsub("(.*),", "%1 and")
print(s)  --> Apples, Oranges and Grapes
票数 4
EN

Stack Overflow用户

发布于 2022-02-25 15:58:06

代码语言:javascript
运行
复制
local str = "Apples, Oranges, Grapes"
print(str:gsub(",(%s+%w+)$", " and%1"))
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71268329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档