【问题标题】:First character uppercase Lua第一个字符大写 Lua
【发布时间】:2011-01-26 04:10:52
【问题描述】:

Lua 是否提供了将单词中的第一个字符变为大写的功能(如 php 中的 ucfirst),如果有,如何使用?

我希望keywords[1] 的首字母大写。我读过string.upper 这样做了,但它把整个单词变成了大写。

【问题讨论】:

    标签: string lua


    【解决方案1】:

    有一些有用的字符串配方here,包括这个。要将字符串中的第一个字符更改为大写,您可以使用:

    function firstToUpper(str)
        return (str:gsub("^%l", string.upper))
    end
    

    【讨论】:

    • @GrasDouble 请不要编辑其他人的代码,除非它只是格式更改。您的编辑(删除括号)改变了函数的行为并使其不正确(它使函数返回两个值而不是一个)。
    • 对不起,我刚刚被this gotcha 抓住了(确实很危险)。 gsub 案例甚至特别记录在本节的末尾。
    【解决方案2】:

    这也有效:s:sub(1,1):upper()..s:sub(2)

    【讨论】:

    • interjay 的版本在 LÖVE (love2d) 中不起作用,但另一方面,它非常好用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-12
    • 2023-02-23
    • 2020-01-10
    • 1970-01-01
    • 2013-09-01
    • 2011-12-11
    • 2016-03-12
    相关资源
    最近更新 更多