|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Varese
Messaggi: 331
|
[vb6] Cercare parola in una txtbox...
Vorrei cercare un termine all'interno di una text box (magari una rich text box, che possiede il metodo "find") impostando una parola di inizio ricerca e una di fine, memorizzando poi ciò che ci sta in mezzo.
Esempio: "Ieri ho mangiato una mela, era buona." (stringa all'interno della txtbox). Parola1: "mangiato" Parola2: "," Risultato: " una mela" Spero di essere stato chiaro ciao. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
ti conviene nn utilizzare il metodo Find, almeno la Rich lo ha però magari se tu lo fai standard per tutti e lo metti sotto forma di funzione, se gli passi la stringa e gli altri paraetri che ti interessano viene una cosa carina ed utilizzabile per qlc cosa abbia un testo...cmq guarda se capisci questa routine:
Codice:
Private Sub Form_Load()
Dim nLen(2) As Integer
Dim sStr(2) As String
sStr(1) = "mangiato"
sStr(2) = ","
nLen(1) = InStr(Text1, sStr(1))
If nLen(1) > 0 Then
nLen(1) = nLen(1) + Len(sStr(1))
nLen(2) = InStr(nLen(1), Text1, sStr(2))
MsgBox Mid(Text1, nLen(1), nLen(2) - nLen(1))
End If
End Sub
sStr(1)=Prima parola cercata sStr(2)=Seconda parola cercata nLen(1)=Contiene l'indice della parola cercata nLen(2)=Contiene l'indice di fine ricerca |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Varese
Messaggi: 331
|
Grazie, funziona.
Vorrei fare in modo che mi cercasse tutte le parole (comprese tra altre due stabilite) presenti nella mia text e che scrivesse queste in file di testo. Per ora ho fatto questo Codice:
Private Sub Command2_Click()
Dim parola As String
Open App.Path & "\parolatrovata.txt" For Output As #1
Dim nLen(2) As Integer
Dim sStr(2) As String
sStr(1) = "stringa iniziale"
sStr(2) = "stringa finale"
nLen(1) = InStr(rtb1, sStr(1))
If nLen(1) > 0 Then
nLen(1) = nLen(1) + Len(sStr(1))
nLen(2) = InStr(nLen(1), rtb1, sStr(2))
parola = Mid(rtb1, nLen(1), nLen(2) - nLen(1))
Write #1, parola
Close
End If
End Sub
E' possibile realizzare quanto detto sopra? tnx |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Sarà la febbre...ma sai che nn ho capito che chiedi
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Varese
Messaggi: 331
|
Usando il codice che mi hai suggerito il programma cerca e trova la prima parola che soddisfa i parmetri da noi dettati (nell'esempio precendente era "una mela", avendo usato i paramentri "mangiato" e ",".)
Anche se la nostra text contiene altre parole che soddisfano i parametri, il programma si ferma dopo aver trovato la prima. Vorrei che una volta trovata la prima parola, il programma non si fermasse ma continuasse a cercare un eventuale seconda, terza ecc... ora è + chiaro?
|
|
|
|
|
|
#6 |
|
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
Codice:
Sub ppp() a$ = "tua sorella, nerchia, tuanerchia_//&%$£ pinca tua kjhkjh nerchia jhghg tua_1234_nerchia" b1$ = "tua" b2$ = "nerchia" bb$ = "": ipos = 1 Do b$ = f_Mid$(a$, b1$, b2$, ipos, ipos) bb$ = bb$ & b$ Loop Until ipos = 0 End Sub Function f_Mid$(a$, b1$, b2$, ipos0, ipos2) ipos1 = InStr(ipos0, a$, b1$) If ipos1 > 0 Then ipos1 = ipos1 + Len(b1$) ipos2 = InStr(ipos1, a$, b2$) If ipos2 > 0 Then f_Mid$ = Mid$(a$, ipos1, ipos2 - ipos1) End If Else ipos2 = 0 End If End Function |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Varese
Messaggi: 331
|
Il mio problema non è il ciclo loop.
Non riesco a fare in modo che dopo avermi cercato la prima parola nel testo, al secondo giro di loop mi ignori la prima parola (già trovata) e passi alla seconda (poi al terzo giro alla terza, al quarto alla quarta ecc...). Dal codice postato da a2000 non riesco a capire come fare ciò. |
|
|
|
|
|
#8 | |
|
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
Quote:
b1$ = "tua" b2$ = "nerchia" bb$ = " sorella, kjhkjh _1234_" |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
|
[OT]
Bentornato a2000!!
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
|
|
|
|
|
#10 |
|
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
Ciao maxisborone
[/OT] |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
|
very [OT]
quanto è durato l'internamento?
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
|
|
|
|
|
#12 |
|
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
un T[OT] ... off., due T[OT] on.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:49.



















