У меня есть строка выглядит следующим образом:лучший способ для создания строки в Java
«Это @awesome @dude»
Из этой строки я хочу, чтобы извлечь удивительный и чувак и создать строку
output==> "awesome,dude"
Так что мой код, как следующее:
Matcher matcher = Pattern.compile("(?<[email protected])\\w+").matcher(textStr);
while (matcher.find()){
mergedStr += matcher.group() +",";
}
Но это создает артефакт в ванной d
output==> "awesome,dude," //<-- egghh comma.. in the end
Что является лучшим способом решить эту проблему.
Вы добавляете дополнительную запятую с объединеннымStr + = matcher.group() + ","; линия. – rajah9
Проблема не в регулярном выражении, а только на том, как вы строите результат. –
Ну, вы можете либо обрезать постороннюю запятую, либо никогда не добавлять ее в первую очередь. Один из способов сделать последнее - сделать первое слово вне цикла, а затем добавить запятую вверху цикла. –