Спасибо всем!Получение текста между ** в Java
Так что мои инструкции:
Название метода: подчеркнуть
Параметр: объект сканер, содержащий слова
Возвращаемое значение: строку, где-нибудь между парой звездочками все в верхнем регистре
Ex достаточно:emphasize(new Scanner("I am so *happy* right now! "))
должен возвращать I am so HAPPY right now!
Примечания: Ваш метод должен работать, даже если Scanner
объект не содержит ни слова.
Звездочки будут попадать только попарно. Не будет странного количества звездочек.
Я понял, что первым шагом было бы вернуть значение между * *
в виде шапок.
public static String emphasize(Scanner bold)
{
String str = bold.nextLine();
String answer = str.substring(str.indexOf("(") + 1, str.indexOf("*"));
String caps = "";
return answer.toUpperCase();
}
является то, что я до сих пор, но Java не любит, когда я использую два * *
найти деталь, она дает мне все виды ошибок. Я могу сделать одно * и а), но не два, какие-то идеи?
я «думаю» вы предполагается использовать 'Сканер # next' проверить каждое слово, то вы должны быть в состоянии использовать' Строка # startsWith' и 'Строковые # endsWith' найти' * ' персонажи. Затем вы можете использовать 'StringBuilder' для построения результата в соответствии с вашими другими потребностями – MadProgrammer
спасибо madprogrammer! Я проверяю api для этих методов! – Elchapo
Вы можете использовать Stack, нажать звезду, и в то время как стек имеет элемент в верхнем регистре буквой, и когда вы увидите другой элемент стека со звездочкой, и ваш стек будет пустым. – PeerNet