Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET]Ottenere parte del testo di una pagina web
Forum - C# / VB.NET - [VB.NET]Ottenere parte del testo di una pagina web

Avatar
salva94 (Normal User)
Rookie


Messaggi: 57
Iscritto: 02/01/2010

Segnala al moderatore
Postato alle 10:46
Domenica, 18/04/2010
Da un pò di tempo sto cercando di ottenere il testo scritto in una pagina web... però riesco ad ottenerlo solamente selezionandolo e incollandolo in una textbox , però facendo in questo modo ottengo TUTTO il testo , io invece vorrei estrapolare solo una parte di testo di una pagina web. Esempio :
Vado su un sito sportivo e vorrei estrapolare solamente i risultati delle partite che vi sono e non anche il testo sopra a destra o a sinistra, come faccio?

PM Quote
Avatar
walker93 (Member)
Expert


Messaggi: 460
Iscritto: 31/01/2010

Segnala al moderatore
Postato alle 19:02
Domenica, 18/04/2010
devi sapere dove parte il codice che ti serve e dove finisce... in modo da prendere solo quello:
se ad esempio conosci la prima parola che ti interessa potrai cercarla in tutto il documento e prendere il testo solo a partire da quella parola e terminare con un altra parola

PM Quote
Avatar
salva94 (Normal User)
Rookie


Messaggi: 57
Iscritto: 02/01/2010

Segnala al moderatore
Postato alle 21:11
Domenica, 18/04/2010
Sono riuscito a fare questo code... però vorrei estrapolasse il testo ad esempio dalla parola "dada" alla parola "sc" e come il code che hgo fatto , dove bisogna sapere da che "numero" della parola a che numero della parola.... si può fare?

Codice sorgente - presumibilmente Plain Text

  1. TextBox1.Select(TextBox1.Text.StartsWith(3), TextBox1.Text.EndsWith(5))
  2.         TextBox1.Copy()
  3.         TextBox2.Paste()




PM Quote
Avatar
walker93 (Member)
Expert


Messaggi: 460
Iscritto: 31/01/2010

Segnala al moderatore
Postato alle 22:15
Domenica, 18/04/2010
usa la funzione instr(testo,parola cercata)
ti restituisce la posizione della parola che vuoi all'interno di un altro testo,se è 0 non è presente se c'è ne più di una ti da la prima che trova

PM Quote
Avatar
salva94 (Normal User)
Rookie


Messaggi: 57
Iscritto: 02/01/2010

Segnala al moderatore
Postato alle 0:00
Martedì, 20/04/2010
Non ho capito molto bene....

PM Quote
Avatar
walker93 (Member)
Expert


Messaggi: 460
Iscritto: 31/01/2010

Segnala al moderatore
Postato alle 17:08
Martedì, 20/04/2010
se tu conosci la parola di partenza ad esempio "dada"
usi:
dim prima_parola as integer = instr(textbox1.text,"dada")
quella variabile contiene la posizione del primo carattere di "dada" all'interno della textbox
con  lo stesso metodo ottieni il primo dell'ultima parola ad esempio "sc"
adesso che hai le due posizioni puoi usare la funzione mid oppure substring
con mid farai
mid(textbox1.text,prima_parola,textbox1.text.lenght - ultima_parola + lunghezza ultima parola)
con substring
textbox1.text.substring(prima_parola,textbox1.text.lenght - ultima_parola + lunghezza ultima parola)

Ultima modifica effettuata da walker93 il 20/04/2010 alle 17:11
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 18:19
Martedì, 20/04/2010
InStr non è una funzione adeguata ai principi .NET. Usa String.IndexOf (textbox1.text.indexof("dada")) e String.Substring (già suggerita). Sarebbe meglio, tuttavia, usare o le espressioni regolari o il servizio di parsing html già fornito dal framework mediante le classi HtmlDocument e HtmlElement.
http://totem.altervista.org/guida/versione3/F2%20-%20Espre ...
http://totem.altervista.org/guida/versione3/D2%20-%20Parsi ...

PM Quote
Avatar
salva94 (Normal User)
Rookie


Messaggi: 57
Iscritto: 02/01/2010

Segnala al moderatore
Postato alle 21:36
Giovedì, 22/04/2010
Vi ringrazio molto, Totem naturalmente darò un occhiata ai link che mi hai dato , così imparo qualcosa di buono xD , comunque il code è questo:


Codice sorgente - presumibilmente Plain Text

  1. TextBox1.Text = TextBox1.Text.Substring(TextBox1.Text.IndexOf("dada"), TextBox1.Text.IndexOf("sc"))


PM Quote