begin process at 2012 02 15 15:53:28
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

validation de texte et recherche de mot dans une chaine de caractère


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

validation de texte et recherche de mot dans une chaine de caractère

samedi 21 janvier 2006 à 20:00:30 | validation de texte et recherche de mot dans une chaine de caractère

Groovygirl

Bonjour, voici mon problème
je dois saisir du texte dans un textbox, mais je dois vérifier que certain mot ne se trouve pas dans la chaine de caractère. Si les mot interdits sont dans le textbox, je dois avertir l'utilisateur que ces mot ne sont pas permis et il doit recommencer.
Pouvez-vous m'aider svp!!

Groovygirl


samedi 21 janvier 2006 à 22:57:37 | Re : validation de texte et recherche de mot dans une chaine de caractère

jpleroisse

Bonsoir,
Voici un exemple.

Private Sub Text1_Change()
If Text1.Text = "Mais" Then
    MsgBox "Ce mot est interdit ! recommencez.", vbCritical, "Mots interdits"
Text1.Text = ""
Text1.SetFocus
End If
End Sub

jpleroisse

Si une réponse vous convient, cliquez Réponse Acceptée.



samedi 21 janvier 2006 à 23:47:31 | Re : validation de texte et recherche de mot dans une chaine de caractère

jack

Administrateur CodeS-SourceS
Salut
Non, il faut tester que le mot interdit ne soit pas dans la chaine.
Je suppose que dans la textebox on peut avoir plusieurs mots ET qu'il y a plusieurs mots interdits.
Donc, il faut compléter tout ça :
-1- Mettre les mots interdits dans un tableau
-2- Rechercher chacun des mots dans la TextBox
For r = 0 To UBound(Tableau)
   If UCase(TextBox.Text) Like ("*" &  UCase(Tableau(r)) & "*") Then
      ' MOt interdit trouvé ... blablabla
      Exit For
   End If
Next r

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
samedi 21 janvier 2006 à 23:49:08 | Re : validation de texte et recherche de mot dans une chaine de caractère

jack

Administrateur CodeS-SourceS

NB : Il faudra penser à chercher aussi les mots interdits en remplaçant les accents des mots par de simples lettres non accentuées pour que ce soit vramient efficace.

dimanche 22 janvier 2006 à 17:38:24 | Re : validation de texte et recherche de mot dans une chaine de caractère

SkyRocKo

Membre Club
Salut Groovygirl,

Je t'ai concocté un code qui fonctionne impec Tu n'as qu'à créer un TextBox nommé 'Text1" et copier-coller le code ci-dessous :



'''DANS UNE FORM
Const sKeyWords As String = "Hot;doG;snooPy;SkyRocKo" ' Liste des mots clé
Const sSeparate = ";"
Dim KeyWord(25) As String ' Le fameux tableau
Dim bForbidden As Boolean ' Saisie correcte ??


Private Sub Text1_Change()
    Dim Count As Byte
    'On met les mots clé dans un tableau
    Call StrDecompose(sKeyWords, KeyWord(), sSeparate, , , , Count)
    'On vérifie si la saisie est correcte
    bForbidden = IsForbidden(Text1.Text, KeyWord(), Count)
    'Ici tu places l'action à effectuer...
    If bForbidden Then MsgBox "Valeur interdite !", vbCritical, "ERROR !!!"
End Sub

''''DANS UN MODULE
Public Function IsForbidden(ByVal sText As String, ByRef sValue() As String, ByVal Count, Optional ByVal StartIndex = 0, Optional ByVal Compare As VbCompareMethod = vbTextCompare) As Boolean
    Dim a
    For a = StartIndex To (Count - 1)
        If InStr(1, sText, sValue(a), Compare) > 0 Then
            IsForbidden = True
            Exit For
        End If
    Next a
End Function


Public Sub StrDecompose(ByVal strSource As String, ByRef strDest() As String, Optional ByVal strSeparate As String = ";", Optional ByVal Compare As VbCompareMethod = vbTextCompare, Optional ByVal Start = 1, Optional ByVal StartIndex = 0, Optional ByRef Count)
    Dim a, Pos
    strSource = Mid$(strSource, Start)
    'Nombre d'itérations
    Count = Len(strSource) - Len(Replace$(strSource, strSeparate, "", , , Compare)) + IIf(Len(sKeyWords) >= 1, 1, 0)
    'Continue?
    If Count <= 1 Then
        strDest(StartIndex) = strSource
        Exit Sub
    End If
    'Remplie le tableau
    If Right$(strSource, Len(strSeparate)) <> strSeparate Then strSource = strSource & strSeparate
    For a = 1 To Len(strSource)
        Pos = InStr(a, strSource, strSeparate): If Pos = 0 Then Exit For
        strDest(StartIndex) = Mid$(strSource, a, Pos - a)
        StartIndex = StartIndex + 1
        a = Pos
    Next
End Sub

Si tu as des questions, n'hésites pas

SkyRocKo




Cette discussion est classée dans : texte, mot, caractère, chaine, validation


Répondre à ce message

Sujets en rapport avec ce message

remplacement d'une chaine de caractère dans un fichier texte [ par couf ] couf Bonjour à tous , Je voudrais juste un petit renseignement, je pratique le vbs depuis très peu de temps et je ne trouve pas ce que je cherche dan lecture d'une chaine de caractère dans un fichier texte [ par dhodre ] Je cherche à lire une partie d'un fichier texte jusqu'à un point d'arret identifié par le caractère "#".Le problème c'est que mon texte comprend des v Rechercher une chaine de caractère dans un fichier texte... [ par Luuna ] Je cherche à convertir un fichier texte en table Access par l'intermédiaire de VB6...Voici le code dont je me sert tiré d'un livre :------------------ extraction depuis une chaine de texte en partant d1 caractère spécial [ par oni0013 ] Salut,Je dispose d'une textbox et je voudrai extraire de cette dernière tout le texte qui va depuis le signe ";" jusqu'à la fin du texte.Je pense qu'i recherche d'une chaine de caratères et souligner le mot contenant cette chaîne de caractère (WORD VBA) [ par coulpi ] je suis en train d'écrire une macro permettant de rechercher une chaîne de caractère et par la suite de souligner le mot contenant cette chaîne de car Récupérer une ligne de texte en fonction du 1er mot de la ligne [ par NewSky ] Bonjour à tous,Je cherche depuis 2 jours la façon de récupérer la ligne entière d'un fichier texte uniquement si elle contient au tout début un mot.J' Texte dans une chaine [ par xav0021 ] BonjourJ'arrive pas à trouver comment on peut vérifier si un mot se trouve dans une chaine de caractère.Par exemple, j'ai une phrase et mon mot c'est Chaine de caractère [ par La biode ] Bonsoir, comment pouvons nous faire pour chercher dans une textbox un mot ou une chaine de caractère, et trouver en plus où est situé celui ci dans la Comment afficher une chaine de caractère en ascii [ par nandofive ] Bonjour, Je souhaite créer un programme qui affiche le texte en ASCII lorsqu'on saisie du texte avec un TextBox. Je sais qu'on peut afficher une car Recherche d'un mot dans un fichier texte [ par soniabor ] Salut: je suis débutante en vb.net 2008, après avoir accéder à un fichier texte, je veux comparer une chaine de caractère avec les mots de ce fichier


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 12,106 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales