-2
votes

Substrings à Swift 4

J'ai une chaîne d'URL (faux)

http: //fools.sayers.mine.cs/api/analytics/ce_ssn

Et j'aimerais créer une nouvelle chaîne d'URL

http: //fools.sayers.mine.cs/api/

Le problème que je suis confronté est le dernier paramètre CES_SSN peut parfois être quelque chose de tel que ces_fw ou adv_let donc je ne peux pas être entièrement défini. un endindex dans mon code.

existe-t-il un moyen de créer une fonction dynamique en disant simplement de me donner les 32 premiers caractères à chaque fois, peu importe l'endindex


0 commentaires

4 Réponses :


0
votes

Vous pouvez utiliser préfixe () xxx


0 commentaires

0
votes

Ceci fonctionne pour SWIFT 4 STRAND>

if let index = url.range(of: "api/")?.upperBound {
    let api = url.prefix(upTo: index)
}


1 commentaires

Yeesh, je me sens stupide en ce moment. Merci pour l'aide!



-1
votes

Cela sonne sur erreur si tout à coup votre URL est https code> au lieu de http code>, par exemple.

à la place je ferais: p> xxx pré>

Les composants qui vous intéressent sont ensuite le composant 0 et 1 et vous pouvez reconstruire votre URL comme ceci: p>

let newURL = "\(scheme)://\(host)/\(components[0])/\(components[1])"
print (newURL) // "http://fools.sayers.mine.cs/api/analytics"


0 commentaires

1
votes

Vous avez une URL. Utilisez URL . En supposant que vous sachiez que vous souhaitez laisser tomber les deux dernières parties du chemin, vous pouvez faire: xxx

sortie:

http: //fools.sayers.mine.cs/api/


0 commentaires