gpt4 book ai didi

string - Elixir 只大写一个单词的第一个字母

转载 作者:行者123 更新时间:2023-12-02 07:59:58 25 4
gpt4 key购买 nike

我有一个字符串,我只需要将第一个字母大写。我还需要保留任何后续字母的大小写。一开始我是这么想的:

String.capitalize("hyperText") 

会做的伎俩。但除了修复第一个字母外,它还将其余字母小写。我最终需要的是“超文本”。我最初的通行证是:
<<letter :: utf8, rest :: binary>> = word
upcased_first_letter = List.to_string([letter])
|> String.upcase()

upcased_first_letter <> rest

这工作得很好,但它确实看起来很冗长,而且工作量也很大。我一直觉得有更好的方法。我只是没有看到它。

最佳答案

您可以使用 with/1 将其保留为单个表达式,您可以避免 List.to_string通过使用 <<>>再次对结果代码点进行操作:

with <<first::utf8, rest::binary>> <- "hyperText", do: String.upcase(<<first::utf8>>) <> rest

或者把它放在一个函数中:

def upcaseFirst(<<first::utf8, rest::binary>>), do: String.upcase(<<first::utf8>>) <> rest

关于string - Elixir 只大写一个单词的第一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58672621/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com