Comment faire pour obtenir l'Index de la deuxième virgule dans une chaîne de caractères

J'ai une chaîne de caractères dans un Tableau qui contient deux virgules ainsi que les tabulations et les espaces blancs. Je suis en train de couper les deux mots dans cette chaîne, les deux d'entre eux avant la virgule, j'ai vraiment ne se soucient pas des tabulations et des espaces blancs.

Ma Chaîne ressemble à ceci:

String s = "Address1       Chicago,  IL       Address2     Detroit, MI"

Je obtenir l'index de la première virgule

int x = s.IndexOf(',');

Et à partir de là, j'ai coupé la corde avant que l'indice de la première virgule.

firstCity = s.Substring(x-10, x).Trim() //trim white spaces before the letter C;

Alors, comment puis-je obtenir l'index de la deuxième virgule afin que je puisse obtenir mon autre chaîne?

J'apprécie vraiment votre aide!

  • Sera la chaîne de toujours avoir 2 virgules?
  • Vous souhaitez vous lancer dans l'apprentissage de regex maintenant.
  • pourquoi ne pas vous split(',') et puis obtenir toutes les tranches dans un tableau?
  • Bonne question. Elle le fait parfois et parfois, il n'a pas 2 des virgules.
  • Obtenir l'indice de la nième occurrence d'un caractère dans une chaîne de caractères
  • s.Split(',').Skip(1).First() aurait pu faire le travail. Pas besoin de trouver des indices de caractères.

InformationsquelleAutor Sem0 | 2014-03-26