gpt4 book ai didi

r - 将大写单词转换为标题大小写

转载 作者:行者123 更新时间:2023-12-02 08:05:41 26 4
gpt4 key购买 nike

我想改变这个:

input <- c("Théodore Agrippa d'AUBIGNÉ", "Vital d'AUDIGUIER DE LA MENOR")

进入这个:

output <- c("Théodore Agrippa d'Aubigné", "Vital d'Audiguier De La Menor")

唯一应该修改的是那些全部大写的单词。

编辑:

一种边缘情况,其中序列的第一个字母不在 [A-Z] 中:

input <- "Philippe Fabre d'ÉGLANTINE"

最佳答案

这里有一个替代方案:

gsub("(?<=\\p{L})(\\p{L}+)", "\\L\\1", input, perl = TRUE)

我并不想与其他现有答案竞争,我只是解决(或尝试)挑战并在此处分享它,因为它可能对某人有用和/或我得到关于如何改进它的建设性反馈.

编辑

出于某种原因我跳过了:

only words [...] that are all upper case

我认为下面的处理方式更好一些:

gsub("(?<=\\b\\p{Lu})(\\p{Lu}+\\b)", "\\L\\1", input, perl = TRUE)

关于r - 将大写单词转换为标题大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51857207/

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