Suddividere un array: metodo .split?

venerdì 10 ottobre 2008 - 17.20

England Profilo | Newbie

Ciao a tutti gli utenti da un neo-iscritto, nonche' neofita di C#.
Sono venuto subito in questa sezione per spiegarvi il mio problema. Ho covertito una stringa in un array, che dovrei suddividere in ulteriori 2 array. Da quanto mi e' stato spiegato, dovrei usare il metodo .split e compilare il programma in questo modo:

char[] primaParte = array1.Split("qui inserisco il carattere che costituisce il separatore");
char[] secondaParte = array1.Split();

Ora, quando vado in compilazione, visual studio mi segnala che System.Array non contiene una definizione per questo scopo (traduzione maccheronica dall'inglese).
Sapendo che C# e' un linguaggio case-sensitive, ho provato a scrivere ".split" sia con l'iniziale minuscola (".split", appunto), sia con la maiuscola (".Split"), ma l'errore rimane.
Qualcuno potrebbe darmi una mano?
Grazie in anticipo.

aiedail92 Profilo | Expert

Ciao

Il metodo Split (con la S maiuscola) non è un membro di Array, è un metodo di String.

La stringa da cosa deve essere divisa? E le due sottostringhe?

Luca

England Profilo | Newbie

Il programma dovrebbe accettare una proporzione, quindi una stringa scritta, indifferentemente, in uno di questi modi:
x:1=2:3
1:x=2:3
1:2=x:3
1:2=3:x
Naturalmente, l'utente deve poter inserire un numero con un numero indefinito di caratteri.
Mi e' stato suggerito di procedere in questo modo:
1) Fare una prima suddivisione, prendendo a riferimento il simbolo "=" ottenendo :
- 1:2 nel primo array
- 3:x nel secondo array
2) Suddividere ulteriormente gli elementi ottenuti, fino ad avere
1
:
2
=
3
:
x

Forse, a causa della stanchezza, non sono stato molto chiaro, spero che possiate capire comunque.

aiedail92 Profilo | Expert

Allora quello che devi fare è una cosa del genere:

string proporzione = "1:2=x:3"; //Divide la stringa nei due membri string[] members = proporzione.Split('='); //Divide entrambi i membri in antecedente e conseguente string[] first = members[0].Split(':'); string[] second = members[1].Split(':');

Oppure, molto più semplicemente:

string proporzione = "1:2=x:3"; //Divide la stringa nei quattro valori string[] values = proporzione.Split(':', '=');

Luca
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5