Wyszukiwanie i zamiana tekstu

Kotlin:
Wyszukiwanie i zamiana tekstu

Jak to zrobić:

fun main() {
    val text = "Kotlin to super język!"
    val searchText = "super"
    val replaceWith = "fantastyczny"
    
    val updatedText = text.replace(searchText, replaceWith)
    println(updatedText) // Kotlin to fantastyczny język!
}

W głębi tematu

Historia wyszukiwania i zamiany tekstu sięga pierwszych edytorów tekstu. Pojawiła się konieczność szybkiego poprawiania tekstów, co doprowadziło do powstania komendy find and replace. W Kotlinie, podobnie jak w innych współczesnych językach, operacje te są banalne, a funkcje wbudowane ułatwiają pracę.

Alternatywy dla replace() to regex (wyrażenia regularne), które pozwalają na bardziej złożone wyszukiwanie. Możesz użyć Regex w Kotlinie, by sprawdzić pasowanie wzorca, jak poniżej:

fun main() {
    val regex = Regex("[a-zA-Z]+ to [a-z]+ język!")
    val text = "Kotlin to super język!"
    val isMatch = regex.containsMatchIn(text)
    
    println(if (isMatch) "Pasuje!" else "Nie pasuje!") // Pasuje!
}

Na poziomie implementacji, należy pamiętać o wydajności przy obsłudze dużych zbiorów danych – tutaj już replace() może nie wystarczyć i lepiej sięgnąć po biblioteki lub algorytmy dedykowane przeszukiwaniu tekstu, jak KMP (Knuth-Morris-Pratt).

Zobacz także