Soyez le premier à donner votre avis sur cette source.
Snippet vu 4 956 fois - Téléchargée 21 fois
Imports System.Text.RegularExpressions 'couper le texte tout les x mots Private Sub coupertexte(ByVal chaine As String, ByVal x As Integer, ByVal text As TextBox) Dim i, countword, y As Integer Dim chtword() As String = chaine.Split("".ToCharArray) countword = chtword.Length 'nombre de mots dans la chaine If x = 0 Or x > countword Then Exit Sub y = x 'nombre de mots pour ajout separateur ' On crée un Regex Dim R As New Regex("\s*\s* ") ' décomposition de ligne en champs Dim Nom As String() = R.Split(chaine) For i = 0 To Nom.Count - 1 text.AppendText(CStr(Nom(i).ToString & " ")) 'ajpoute un espace entre chaque mot If i = x Then text.AppendText("_ ") 'ajoute le séparateur "_" tout les x mots pour retour à la ligne x = x + y End If If i = countword Then Exit For End If Next afficher_texte(text) End Sub 'mettre le texte sur x lignes Private Sub nombreligne(ByVal chaine As String, ByVal x As Integer, ByVal text As TextBox) Dim i, countword, y As Integer Dim chtword() As String = chaine.Split("".ToCharArray) countword = chtword.Length 'nombre de mots dans la chaine If x = 0 Or x > countword Then Exit Sub y = CInt(countword / x) 'nombre de mots pour ajout separateur x = y 'nombre de mots pour separateur ' On crée un Regex Dim R As New Regex("\s*\s* ") ' décomposition de ligne en champs Dim Nom As String() = R.Split(chaine) For i = 0 To Nom.Count - 1 text.AppendText(CStr(Nom(i).ToString & " ")) 'ajpoute un espace entre chaque mot If i = y Then text.AppendText("_ ") 'ajoute le séparateur "_" tout les x mots pour retour à la ligne y = y + x End If If i = countword Then Exit For End If Next afficher_texte(text) End Sub 'couper le texte tout les x caracteres Private Sub coupercaractere(ByVal chaine As String, ByVal x As Integer, ByVal text As TextBox) Dim a, i, countcaract As Integer countcaract = chaine.Length 'nombre de caracteres dans la chaine If x = 0 Or x > countcaract Then Exit Sub For i = x To chaine.Count - 1 Step x a = (InStr(i, chaine, " ")) 'chercher l'espace le plus près chaine = (chaine.Insert(a, "_ ")) Next text.AppendText(chaine) afficher_texte(text) End Sub Private Sub afficher_texte(ByVal text As TextBox) ' On crée un Regex Dim R As New Regex("\s*\s*_ ") ' décomposition de ligne en champs Dim Nom As String() = R.Split(text.Text) Dim myText As String = String.Join(ControlChars.CrLf, Nom) text.Text = myText End Sub End Sub
Dim str As String = "Les Regex sont un outil (ou plutôt un système) très puissant permettant de vérifier la syntaxe d'une chaîne de caractères. Plus précisément, c'est vérifier que la chaîne de caractères à examiner respecte un motif ou une série de motifs (notre Regex) désignant la syntaxe attendue de la phrase. " coupertexte(str, 10, TextBox1) 'couper le texte tout les x mots (chaine, nbre mots, TextBox)TextBox multiligne nombreligne(str, 5, TextBox1) 'mettre le texte sur x lignes (chaine, nbre lignes, TextBox)TextBox multiligne coupercaractere(str, 60, TextBox1) 'mettre le texte sur x caracteres sans couper de mot (chaine, nbre caractères, TextBox)TextBox multiligne
Commentaire
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.