如何在 Java 字符串中为每个大写字母前添加下划线?


使用 StringBuffer 类

使用 StringBuffer 在字符串中每个大写字母前添加下划线——

  • 创建一个空 StringBuffer 对象。

  • Character 类的 isUpperCase() 方法接受一个字符并验证它是否是大写,如果是,此方法返回 true。使用此方法,验证字符串中的每个字符。

  • 如果是大写字母,则使用 append() 方法在其前面追加下划线。

示例

public class Adding_BeforeCapital {
   public static void main(String args[]) {
      String str = "HelloHowAreYouWelcome";
      StringBuffer sb = new StringBuffer();
      for (int i = 0; i < str.length(); i++) {
         if(Character.isUpperCase(str.charAt(i))) {
            sb.append("_");
            sb.append(str.charAt(i));
         } else {
            sb.append(str.charAt(i));
         }
      }
      String result = sb.toString();
      System.out.println(result);
   }
}

输出

_Hello_How_Are_You_Welcome

使用正则表达式

String 类的 replaceAll() 方法接受两个表示正则表达式和替换字符串的字符串,并将匹配的值替换为给定的字符串。

示例

public class Adding_BeforeCapital {
   public static void main(String args[]) {
      String str = "HelloHowAreYouWelcome";
      String result = str.replaceAll("()([A-Z])", "$1_$2");
      System.out.println(result);
   }
}

输出

_Hello_How_Are_You_Welcome

更新日期:04-Dec-2023

2K+ 阅读量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告