Texten vergelijken

Status
Niet open voor verdere reacties.

WILLIAMXXX

Terugkerende gebruiker
Lid geworden
29 nov 2006
Berichten
1.246
Hey,

Je hebt een invoer van de gebruiker.
En je hebt de "GoedeText".
Nu moet de invoer van de gebruiker vergeleken worden met de goedetext.
Daarna moet in textbox1 de invoer van de gebruiken komen te staan.
De tekens die niet gelijk zijn aan de goedetext moeten rood worden en de tekens die wel goed zijn groen!

Heeft iemand hier een idee voor?
 
Daarvoor heb je een RICH TEXTBOX nodig

Hier vind je wat meer uitleg (engels)
 
Het werkt niet echt.

Misschien ook nog handig het moet wel in de juiste volorde vergeleken worden!
 
Het werkt niet echt.

Misschien ook nog handig het moet wel in de juiste volorde vergeleken worden!

Het werkt wel hoor ;)

Code:
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim sPass As String = "thePass", sGuess As String = TextBox1.Text
        Dim index As Integer
        RichTextBox1.Text = sGuess

        For index = 0 To sGuess.Length - 1
            RichTextBox1.Select(index, 1)
            If index < sPass.Length Then
                If sPass(index) = sGuess(index) Then
                    RichTextBox1.SelectionColor = Color.Green
                    Continue For
                End If
            End If            
            RichTextBox1.SelectionColor = Color.Red
        Next index
    End Sub
 
Laatst bewerkt:
Ok, dat werkt een stuk beter... Maar toch smijt die de volorde door elkaar heen:(
 
De text wordt vergeleken met een text bestand!
De text in de textbox is ver incompleet vergeleken met de andere goede text!
 
De text wordt vergeleken met een text bestand!
De text in de textbox is ver incompleet vergeleken met de andere goede text!

Dat heb ik niet getest. Ga dadelijk ook weg, maar kijk morgen misschien wel even. :)
 
Hoe kan je een goede loop maken die steeds het volgende doet door het hele text van de textbox?

Code:
TextBoxS.SelectionStart = TextBoxSource.Find("Text")
            TextBoxS.SelectionColor = Color.Red
 
Hoe kan je een goede loop maken die steeds het volgende doet door het hele text van de textbox?

Code:
TextBoxS.SelectionStart = TextBoxSource.Find("Text")
            TextBoxS.SelectionColor = Color.Red

Het zal vast eenvoudiger kunnen:

Code:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        RichTextBox1.Text = "TestTestTestTestTestTest"
        Dim zoekNaar As String = "Test"

        For i As Integer = 0 To RichTextBox1.TextLength - zoekNaar.Length
            If RichTextBox1.Text.Substring(i, zoekNaar.Length) = zoekNaar Then
                RichTextBox1.Select(i, zoekNaar.Length)
                RichTextBox1.SelectionColor = Color.Red
            End If
        Next
    End Sub

Het probleem met de functie 'Find' is dat deze de eerste lokatie weergeeft van de gevonden string, en je dus in een oneindige lus zou eindigen. (Aangezien ik niet zo goed bekend ben met VB, neem ik aan dat het wel eenvoudiger kan.)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan