0
votes

Comment diviser une chaîne avec des mots, des chiffres et des points-virgules à la carte?

J'ai besoin de diviser cette chaîne par un point-virgule et d'écrire sur la carte avec le mot clé et le numéro de valeur.

{Mercedes=2000, BMW=2500, Audi=2000, Porsche=1000}


0 commentaires

3 Réponses :


2
votes
val input = "Mercedes 2000; BMW 2500; Audi 2000; Porsche 1000"

val map = HashMap<String, String>()
val keyValue = input.split("; ") // split the input into key-value items
for (item in keyValue) {
    val keyValueSplit = item.split(" ")// split the key and the value
    val key = keyValueSplit[0]
    val value = keyValueSplit[1]
    map[key] = value // insert into result map
}
println(map)
Output
  {Audi=2000, Porsche=1000, Mercedes=2000, BMW=2500}
Be careful to do the first split at "; " with a whitespace. Otherwise the second split at the whitespace" " will give you a different result.

0 commentaires

3
votes

première division par ";" code> puis map: xxx pré>

imprimera: p>

{Mercedes=2000, BMW=2500, Audi=2000, Porsche=1000}


0 commentaires

1
votes

Comme vous avez spécifiquement demandé une solution de regex: xxx

ce produit xxx

En savoir plus sur regex à Kotlin ici et Voir une démo sur REGEX101.com .


0 commentaires