gpt4 book ai didi

java - 如何在 Java String 中的每个大写字母前添加下划线?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:38:30 26 4
gpt4 key购买 nike

我有一个类似“HelloWorldMyNameIsCarl”的字符串,我希望它变成类似“Hello_World_My_Name_Is_Carl”的字符串。我该怎么做?

最佳答案

是的,正则表达式可以为您做到这一点:

"HelloWorldMyNameIsCarl".replaceAll("(.)([A-Z])", "$1_$2")

表达式 [A-Z] 将匹配每个大写字母并将其放入第二组。您需要第一组 以避免替换第一个“H”。

作为Piligrim指出,此解决方案不适用于任意语言。要捕获 Unicode 标准定义的任何大写字母,我们需要 Unicode 4.1 subproperty \p{Lu} 匹配所有大写字母。所以更通用的解决方案看起来像

"HelloWorldMyNameIsCarl".replaceAll("(.)(\\p{Lu})", "$1_$2")

谢谢 Piligrim。

关于java - 如何在 Java String 中的每个大写字母前添加下划线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1591132/

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