Att använda reguljära uttryck

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.