Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. 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


Il software è come il sesso, è meglio quando è libero.
Linus Torvalds, Conferenza della Free Software Foundation, 1996 (attribuito)

Non provare mai a spiegare il computer a un profano. È più facile spiegare il sesso a una vergine.
Robert Anson Heinle
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


Il software è come il sesso, è meglio quando è libero.
Linus Torvalds, Conferenza della Free Software Foundation, 1996 (attribuito)

Non provare mai a spiegare il computer a un profano. È più facile spiegare il sesso a una vergine.
Robert Anson Heinle
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


Il software è come il sesso, è meglio quando è libero.
Linus Torvalds, Conferenza della Free Software Foundation, 1996 (attribuito)

Non provare mai a spiegare il computer a un profano. È più facile spiegare il sesso a una vergine.
Robert Anson Heinle
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 ...


"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
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