Мне нужно разбить строку по заглавным буквам и желательно перевести последующие слова в нижний регистр;
Например
ThisIsAString становится Это строка
Спасибо
Мне нужно разбить строку по заглавным буквам и желательно перевести последующие слова в нижний регистр;
Например
ThisIsAString становится Это строка
Спасибо
Похоже, вы хотите преобразовать верблюжий регистр в читаемый язык. Так ли это?
Если это так, это решение должно вам подойти — Как преобразовать CamelCase в удобочитаемые имена в Java?
Если вы хотите, чтобы последующие слова были в нижнем регистре, вам придется разделить, чтобы справиться с этим самостоятельно.
Если вам нужна строка, вы можете сделать это:
String str = "ThisIsAString";
String res = "";
for(int i = 0; i < str.length(); i++) {
Character ch = str.charAt(i);
if(Character.isUpperCase(ch))
res += " " + Character.toLowerCase(ch);
else
res += ch;
}
Общее количество слов в слове с верблюжьим регистром, использующем идентификацию символьного регистра
Решение: проблема с верблюжьим делом Hacker Rank: https://www.hackerrank.com/challenges/camelcase/problem
public static void camelCaseWordWithIndexs(String s) {
int startIndex = 0;
int endIndex = 0;
for (int i = 0; i < s.length(); i++) {
if (Character.isUpperCase(s.charAt(i)) || i == s.length() - 1) {
startIndex = endIndex;
endIndex = i != s.length() - 1 ? i : i + 1;
System.out.println(s.substring(startIndex, endIndex));
}
}
}