Scinder une Chaîne en seulement 2 parties
Je veux prendre une chaîne à partir d'une zone de texte (txtFrom) et d'enregistrer le premier mot et enregistrer tout ce qui est à gauche dans une autre partie. (quelle que soit la gauche est tout, passé le premier espace)
Exemple string = "Bob jones est allé au magasin"
tableau[0] donnerait "Bob"
tableau[1] donnerait "jones est allé au magasin"
Je sais qu'il est string[] array = txtFrom.Split(' ');
, mais qui me donne un tableau de 6 avec les mots individuels.
OriginalL'auteur John | 2011-05-06
Vous devez vous connecter pour publier un commentaire.
Utilisation
String.Split(Char[], Int32)
surcharge comme ceci:http://msdn.microsoft.com/en-us/library/c1bs0eda.aspx
OriginalL'auteur manojlds
Il vous suffit de combiner un split avec une jointure pour obtenir le premier élément:
Il vous suffit de prendre le premier élément, puis de la réforme de la reste en arrière dans une chaîne de caractères.
C'est une bonne réponse si l'OP est un espace pour un séparateur et non une virgule. Je pense que votre exemple est assez clair.
Ouais, j'ai l'habitude de faire une virgule, mon mauvais! Trop de virgules chaînes de ce monde!
OriginalL'auteur Tejs
Il y a une surcharge de la
String.Split()
méthode qui prend un entier représentant le nombre de sous-chaînes de revenir.De sorte que votre appel de méthode devient:
string[] array = txtFrom.Text.Split(' ', 2);
OriginalL'auteur Alastair Pitts
OriginalL'auteur Saurabh Nandan
Vous pouvez également essayer RegularExpressions
L'expression régulière correspond à tout jusqu'à la première place et la stocke dans le premier groupe, l' ? mark lui dit de faire le moindre match possible. La deuxième clause attrape tout ce qui est après l'espace et le stocke dans le deuxième groupe
OriginalL'auteur rerun