PDA

View Full Version : [C#]Splittare una string


Kleidemos
13-02-2003, 17:20
Vorrei splittare un string in modo che avendo una string var= "io|tu|egli" ho poi una array di string var_val[var.Lenght] = {"io", "tu", "egli"}
Avevo pensato al seguente cod:

public string slipt(string cosa, int quanticar)
{
//
// TODO: Da Implementare
//
int i;
string[] cosa_val = new string[quanticar];
for (i=0;i<cosa.Length;i++)
{
while(cosa != "|")
{
cosa_val[i] = cosa;
}
}
return cosa_val[quanticar];
}


Puo funzionare?
P.S: come importo una dll dentro a un Progetto Windows Form

Kleidemos
13-02-2003, 18:50
ap

Kleidemos
14-02-2003, 05:56
Originally posted by "Kleidemos"

ap

Kleidemos
15-02-2003, 12:16
:D

monkey72
17-02-2003, 09:51
il parametro "quanticar" che contiene??

... da una rapida occhiata mi sembra anche che il valore restituito debba essere string [] e non string (1a riga di codice)

p.s. non conosco il c# :)

Einstein
17-02-2003, 10:29
Innanzitutto dovresti ritornare un array di stringhe (string[]), poi la funzione split è già implementata nel framework come metodo dell'oggetto string.

Ciao

Kleidemos
17-02-2003, 12:27
Originally posted by "Einstein"

Innanzitutto dovresti ritornare un array di stringhe (string[]), poi la funzione split è già implementata nel framework come metodo dell'oggetto string.

Ciao
voglio farmene una mia :D

monkey72
17-02-2003, 12:30
rispondi anche a me :(

il quanticar che contiene :confused:

Kleidemos
17-02-2003, 13:06
Originally posted by "monkey72"

rispondi anche a me :(

il quanticar che contiene :confused:

va a dichiarare la grandezza dell'array contenente i vari pezzi
string[] cosa_val = new string[quanticar];

monkey72
18-02-2003, 11:40
premesso sempre che il c# non lo conosco ma a parte la sintassi il senso è cmq quello degli altri linguaggi, vorrei fare delle ossevazioni:
- il quanticar te lo potresti anche calcolare con il num di | + 1, ma se a te piace così non ti contraddico :) ;
- il valore restituito dovrebbe essere string[] e non string;
- il ciclo while è in loop!!! se come dall'essempio cosa="io|tu|egli" non sarà mai = "|", semmai il controllo lo devi fare per ogni carrattere di cosa;
- ti serve una stringa temporanea in cui mettere le sottostringhe che leggi in cosa e che vuoi mettere nel vettore cosa_val;
- l'indice i se lo usi per scorrerti la stringa di partenza non puoi usarlo anche come indice del vettore!!!! imho te ne occorre un altro ;)

io farei cosi:

public string[] slipt(string cosa, int quanticar)
{
//
// TODO: Da Implementare
//
int i; int j = 0;
string temp;
string[] cosa_val = new string[quanticar];
for (i=0;i<cosa.Length;i++)
{
temp = "";
while(cosa[i] != "|") temp = temp + cosa[i];
cosa_val[j] = temp;
j++;
}
return cosa_val[quanticar];
}

:confused: :)[/siz]

Kleidemos
18-02-2003, 12:27
me la commenti :confused:









:D

monkey72
18-02-2003, 12:51
più di così :D

Kleidemos
18-02-2003, 13:33
Originally posted by "monkey72"

più di così :D

skerzavo :cool: