Java 8 String.replaceAll (regexStr, replaceStr) не работает, если задано регулярное выражение ". *". Результат - двойная замена Str. Например:
String regexStr = ".*";
String replacementStr = "REPLACEMENT"
String initialStr = "hello";
String finalStr = initialStr.replaceAll(regexStr, replacementStr);
// Expected Result: finalStr == "REPLACEMENT"
// Actual Result: finalStr == "REPLACEMENTREPLACEMENT"
Я знаю, что replaceAll () не имеет смысла использовать, когда регулярное выражение равно ". *", Но регулярное выражение не задано жестко и может быть другими строками регулярного выражения. Почему это не работает? Это ошибка в Java 8?