Swift Obtenir corde entre 2 chaînes de caractères dans une chaîne
Je reçois une chaîne de html analyser c'est-à -
string = "javascript:getInfo(1,'Info/99/something', 'City Hall',1, 99);"
mon code est quelque chose comme
var startIndex = text.rangeOfString("'")
var endIndex = text.rangeOfString("',")
var range2 = startIndex2...endIndex
substr= string.substringWithRange(range)
je ne suis pas sûr si mon deuxième fractionnement de la chaîne doit être "'" ou""',"
je veux mon résultat
substr = "Info/99/something"
- Est-il toujours de la même longueur (par exemple le 1) - ou est-ce différent? Est le " Info/..." toujours le même? Pls partager encore plus de Chaînes, de trouver la meilleure façon d'obtenir de la Chaîne.
- javascript:getInfo(1,'Info/123/somethingelse', 'City2 hall3',456,789);
Vous devez vous connecter pour publier un commentaire.
Je voudrais utiliser une expression régulière pour extraire des sous-chaînes de complexe entrée comme ceci.
Swift 3.1:
Swift 2.0:
Swift 4
Swift 3
Vieille réponse:
self[substringFrom...].range(of: to)
, qui enregistre des séquences de touches et la mention deendIndex
.return flatmap.().map()
code assez difficile à analyser pour la fonction; alors, j'ai essayé réécriture d'une version à l'aide deguard
.Vous pouvez utiliser
var arr = str.componentsSeparatedByString(",")
que votre fraction de seconde qui vous permettra de revenir tableauCela fonctionne si elle est toujours la fraction de seconde:
Envisager d'utiliser une expression régulière pour correspondre à tout ce qui est entre guillemets simples.
Swift 4.2:
Dans Swift 4 ou version ultérieure, vous pouvez créer une méthode d'extension sur StringProtocol pour soutenir les sous-chaînes ainsi. Vous pouvez simplement retourner un
Substring
au lieu d'une nouvelle Chaîne:modifier/u[date: Swift 5
Swift 4 version de @litso. Pour trouver toutes les valeurs dans le texte
J'ai réécrit l'un des meilleurs Swift 4 réponses pour comprendre que c'était fait avec
map
. Je préfère une version à l'aide deguard
, l'OMISerait facile d'ajouter des options de Recherche vers le haut, etc.