Kotlin:
Att använda reguljära uttryck
Hur man gör:
Grundläggande Matchning
För att kontrollera om en sträng matchar ett specifikt mönster i Kotlin kan du använda metoden matches
i Regex
-klassen.
val pattern = "kotlin".toRegex()
val input = "I love kotlin"
val result = pattern.containsMatchIn(input)
println(result) // Utdata: true
Hitta och Extrahera Delar av Strängen
Om du vill hitta delar av en sträng som matchar ett mönster, låter Kotlin dig iterera över alla träffar:
val datePattern = "\\d{2}/\\d{2}/\\d{4}".toRegex()
val input = "Dagens datum är 07/09/2023."
val dates = datePattern.findAll(input)
for (date in dates) {
println(date.value)
}
// Utdata: 07/09/2023
Ersätta Text
Att ersätta delar av en sträng som matchar ett mönster är enkelt med replace
-funktionen:
val input = "Användarnamn: user123"
val sanitizedInput = input.replace("\\d+".toRegex(), "XXX")
println(sanitizedInput) // Utdata: Användarnamn: userXXX
Dela Strängar
Dela en sträng i en lista, med hjälp av ett regex-mönster som avgränsare:
val input = "1,2,3,4,5"
val numbers = input.split(",".toRegex())
println(numbers) // Utdata: [1, 2, 3, 4, 5]
Tredjepartsbibliotek: Kotest
Kotest är ett populärt Kotlin-testbibliotek som utökar Kotlins inbyggda regex-stöd, särskilt användbart för validering i testfall.
// Förutsatt att Kotest är tillagt till ditt projekt
import io.kotest.matchers.string.shouldMatch
val input = "[email protected]"
input shouldMatch "\\S+@\\S+\\.com".toRegex()
// Detta kommer att klara testet om input matchar e-postmönstret.
Genom att integrera reguljära uttryck i dina Kotlin-applikationer kan du utföra sofistikerad textbehandling effektivt. Oavsett om du validerar användarinmatning, extraherar data eller transformerar strängar, erbjuder regex-mönster en robust lösning.