Comment couper une chaine trop longue avec un séparateur (regex) ?

Signaler
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
-
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012
-
Bonjour,

Je cherche à couper une chaine que si elle dépasse un certain nombre de caractère et si possible avec regex.

Exemple : Voici le début de ma phrase (...) et se termine ainsi.

Du genre :


System.Text.RegularExpressions.Regex.Replace(sChaine, "(?<sub>.{0,1})(?<sub>.{50})", "$1 (...) ")

2 réponses

Messages postés
76
Date d'inscription
jeudi 14 mai 2009
Statut
Membre
Dernière intervention
2 août 2018

Salut, je ne pense pas que regex soit necessaire ici, utilise plutot l'attribut 'length'

if chaine.lenth > xx
'inserer un element au milieu
end if

J'espere t'avoir aidé...
Messages postés
262
Date d'inscription
mardi 26 février 2002
Statut
Membre
Dernière intervention
27 février 2012

Merci pour ta réponse, seulement oui car si elle trop longue je voudrai la raccourcir !


Voici le résultat cherché : abcdefg(...)qrstuvwxyz

Mais mon regex n'est pas bon !

Dim MaChaine As String = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
Label1.Text = System.Text.RegularExpressions.Regex.Replace(MaChaine, "(?<sub>.{0,25})[ -.]*(?<sub>.{40,50})", "$1 (...) $2")