У меня есть файл с определенным количеством строк.Мне нужно найти все двойные буквы и заменить вторую букву на ту, которая соответствует ей на карте.Регистр замененных букв следует сохранить.Пример:"kotlIn is a functional programming Language"
должен стать"kotlYn is a functionol programmyng Longuage"
fun changeChar(inputFileName: String, outputFileName: String) {
val outputStream = File(outputFileName).bufferedWriter()
val charsRegex = "([klmn][aei])".toRegex(setOf(RegexOption.IGNORE_CASE))
val validChars = mapOf('a' to 'o', 'e' to 'u', 'i' to 'y')
File(inputFileName).forEachLine { line ->
val sb = StringBuilder(line).replace(charsRegex, /*here is my difficulty*/)
outputStream.write(sb)
outputStream.newLine()
}
outputStream.close()
}
Я провел много часов, но не смог найти решения в Интернете и стандартной библиотеке Kotlin.