Aide code --> Trouver une valeur dans une string

#1

Hello, dans le cadre de ma première réalisation d’un app iOs je voudrais arriver a récupérer la valeur de paramètres dans une string. Voici un exemple de string qui contiendrait les paramètres:

var maString:String = "param1=\"monParam1\" param2=\"monParam2\" "

je voudrais faire une extension de String dans le genre:

extension String {
    func findValue(for key: String, in line: String) -> String{
        if line.contains(key + "= \"" + ... + "\""){
            let result:String = ... 
        }
        return result
    }
}

Quelqu’un aurait une idée pour récupérer simplement les valeurs dans les … pour les renvoyer en result?

#2

Hello !

Je pense que tu t’es trompé de section et qu’il aurait mieux valu poster ta question dans “Aller plus loin (iOS)” :slight_smile:

En fait, je n’ai pas compris pourquoi tu veux faire une extension et ce que tu veux récupérer exactement grâce à ta fonction findValue ?
Tu veux récupérer monParam1 et monParam2 ?

#3

C’est du parsage ton truc. Pourquoi est-ce que les données ne sont pas au format XML ou JSON à l’origine ?

#4

Oui c est du parsing.
Je récupère les données d un fichier m3u qui est en ligne. Pour parser je met tout le contenu dans une string et je parsema string ligne par ligne. Si il y a une meilleure solution je suis preneur mais j ai pas trouvé

#5

J’ai tapé “swift m3u” sur un moteur de recherche et trouvé ça en quelques secondes :

#6

Oui j avais trouvé aussi. Mais ici il a moins de valeurs à récupérer que moi. Mon fichier m3u est plus complet que deux valeurs séparées par une une virgule. Sinon sur le fond je fais plus ou moins la même chose que le code envoyé ici.