Les Snippets

Connexion

"Raccourcir" un texte ( abcd...xyz au lieu de l'alphabet abcdefghijklmnopqrstuvwxyz par exemple )

Niveau requis pour utiliser/comprendre cette source : 1 ( Débutant )
Créé le 28/03/2006 11:31:45 et initié par bultez [Liste]
Date de mise à jour : 29/12/2007 09:11:14
Vue : 27744
Catégorie(s) : Chaîne de caractères
Langages dispo pour ce code :
- Javascript
- PHP 4, PHP 5
- C# 1.x, C# 2.x
- VB 2005, VB.NET 1.x
- VB 2005, VB.NET 1.x
- SQL, SQL 2005
- mIRC
- Java
- VB6, VBA, VBScript
- Python



Langage : Javascript
Date ajout : 28/03/2006
Posté par bultez [Liste]
DateMAJ : 28/03/2006

String.prototype.Raccourcir = function (longueur,mettre)
/*======================================================
 "Raccourcir" un texte 
  ( abcd...xyz au lieu de l'alphabet abcdefghijklmnopqrstuvwxyz par exemple )
 =======================================================
 exemples :
 alert("abcdefghijklmnopqrstuvwxyz".Raccourcir(taille maxi,
                                  "signes pour signaler le raccourci ... par défaut"); */

{
 if ( this.length<=longueur )
 {
  return this;
 }
 var lng = longueur ? longueur : 16 ; // valeurs par défaut
 var met = mettre ? mettre : " ... ";
 return this.substring(0,(lng-met.length)/2) 
          + met
          + this.substring(this.length-(lng-met.length)/2);

Langage : PHP 4 , PHP 5
Date ajout : 28/03/2006
Posté par malalam [Liste]
<?php
$sSep = '...'; // séparateur
$sLength = 3; // longueur à conserver de chaque côté
$sString = 'abcdefghijklmnopqrstuvwyxz'; // chaîne originale
echo substr_replace ($sString, $sSep, $sLength, - $sLength); // affiche 'abc...xyz'
?>
Langage : C# 1.x , C# 2.x
Date ajout : 31/03/2006
Posté par azra [Liste]
string sep = "..."; //séparateur
int longueur = 3; //longueur
string chaine = "abcdefghijklmnop"; // chaine originale
string resultat = string.Format("{0}{1}{2}", chaine.Substring(0, longueur), sep, chaine.Substring(chaine.Length - longueur))); 
Langage : VB.NET 1.x , VB 2005
Date ajout : 07/04/2006
Posté par Charles Racaud [Liste]

Public Function GetShortString(ByVal Str As StringByVal Lenght As IntegerOptional ByVal Separator As String = "..."As String
  If Str.Length - Lenght < Lenght + 1 Then Return Str
  Return Str.Substring(0, Lenght) & Separator & Str.Substring(Str.Length - Lenght)
End Function

Langage : VB.NET 1.x , VB 2005
Date ajout : 13/04/2006
Posté par FREMYCOMPANY [Liste]

''' <summary>

''' Retourne une chaine racourcie de taille {Lenght}

''' </summary>

''' <param name="Str">Source</param>

''' <param name="Lenght">Taille de sortie</param>

''' <param name="Separator">Séparateur</param>

Public Function GetShortString(ByVal Str As String, Optional ByVal Lenght As Integer = 8, Optional ByVal Separator As String = "...") As String

   Try
      If Str.Length < Lenght + 1 Then Return Str 
      Dim MyLenght As Integer = Int((Lenght - Separator.Length) / 2)
      Dim Supp As Integer = (Lenght - Separator.Length) Mod 2 
      Return Str.Substring(0, MyLenght + Supp) & Separator & Str.Substring(Str.Length - MyLenght)
   Catch ex As Exception 
      Return Str.Substring(0, Lenght)
   End Try


End Function

Remarque :
Cette methode-ci me semble plus correcte que celle proposée précédemment... Deplus, la longeur de la chaine retournée est toujours égale à Lenght,quelque soit celui-ci (sauf bien sûr, si il est négatif).
Langage : SQL , SQL 2005
Date ajout : 19/04/2006
Posté par fabrice69 [Liste]

DECLARE @Variable AS VARCHAR(50)
DECLARE @NbChar AS INT
DECLARE @Separateur AS VARCHAR(3)

SET @Variable = 'ABCDEFGHIJKLMNOPQRSTUVXYZ'
SET @Separateur = '...'
SET @NbChar = 3

SELECT 
 LEFT(@Variable, @NbChar) + @Separateur + RIGHT(@Variable, @NbChar)
AS RESUME;


Remarque :
Attention, cela fonctionne avec SQL Server
Romelard Fabrice
Langage : mIRC
Date ajout : 03/05/2006
Posté par KiNdErMaXi [Liste]
;Utilisation :
;$reduit(mot-très-très-long,a,b)
;a étant le nombre de lettres que l'on veut afficher a gauche
;et b étant le nombre de lettres que l'on veut afficher a droite
[code]
alias reduit { if $calc($$2 + $$3) < $len($$1) { return $+($left($$1,$$2),...,$right($$1,$$3)) } }
[/code]
Exemple :
$reduit(abcdefghijklmnopqrstuvwxyz,3,2) 
retourne : abc...yz

Langage : Java
Date ajout : 11/05/2006
Posté par Arglanir [Liste]
/** renvoie la chaine, qui si elle dépasse <code>longueur</code>, est rétrécie avec au milieu un "..." */
public static String retrecitString(String s,int longueur){
  if (s.length() <= longueur) return s;
  String debut = s.substring(0,longueur/2-1);
  String fin = s.substring(s.length()-longueur/2+2,s.length());
  return debut+"..."+fin;
}
Langage : VB6 , VBA , VBScript
Date ajout : 10/12/2007
Posté par us_30 [Liste]
DateMAJ : 11/12/2007
Public Function GetShortString(ByVal Str As String, Optional ByVal Lenght As Integer = 3,  _
                Optional ByVal Separator As String = "..."As String
    If Lenght < Then Lenght = 1
    If Len(Str) - Lenght < Lenght + Then
        GetShortString = Str
    Else
        GetShortString = Left$(Str, Lenght) & Separator & Right$(Str, Lenght)
    End If
End Function

Langage : Python
Date ajout : 18/12/2007
Posté par 0x586e [Liste]
DateMAJ : 29/12/2007
def reduit(s,l,r):
    if ((l+r)<len(s)):
        return s[0:l]+'...'+s[-r:]
    else:
        return s
Remarque :
print reduit('abcdefghijklmnopqrstuvwxyz',8,5)
Retournera : abcdefgh...vwxyz

Snippets en rapport avec : Texte, String, Raccourcir, Reduire



Codes sources en rapport avec : Texte, String, Raccourcir, Reduire

{Delphi} COMBINAISONS DE STRINGS
Bonjour ! Ce code permet à partir d'une base, de faire des combinaisons de strings. Je cherche à...

{Flash} MODIFIER LES APOSTROPHES ET AUTRES CARACTÈRES MADE IN WORD DANS FLASH
Bonjour après avoir un peu trop cherché sur les pages de mon navigatuer pour trouver une solution af...

{Delphi} DELPHI : PROCEDURE SPLIT SIMILAIRE A LA FONCTION EPONYME EN VB
Découpe une chaîne délimitée en ses éléments pour remplir un tableau dynamique passé en paramètre. U...

{PHP} RENVOYER CE QU'IL Y A ENTRE DEUX STRINGS, AVANT UNE STRING OU APRES UNE STRING, DANS UNE STRING SOURCE
Voila, je me suis mis au php il y a de ça une semaine, et je commence à vraiment apprecir depuis que...

{Visual Basic, VB6, VB.NET, VB 2005} CONVERSION D'UN STRING EN DATE SOUS UN FORMAT DONNÉ
Vous connaissez la fonction format en l'utilisant avec une date: unString= format (unedate,"jj MM y...

{JAVA / J2EE} BLOCNOTE TEXTAREA
blocnote win...

{ColdFusion} FORMATAGE DE TEXTE (PRISE EN COMPTE DES RETOURS À LA LIGNE)
C'est une Fonction utilisateur bien pratique qui peut être appelée de n'importe quelle page pour fai...

{C / C++ / C++.NET} METTRE UNE CHAÎNE EN MAJUSCULES
...

{Visual Basic, VB6, VB.NET, VB 2005} LIVE (( TRAITEMENT DE TEXTE ))
juste un éditeur de texte...

{Visual Basic, VB6, VB.NET, VB 2005} RACCOURCIR L'AFFICHAGE DU CHEMIN D'UN FICHIER
Vous avez tous vu défiler, notamment dans les formes d'installation, les fichiers en cours de copie ...