Page 1 sur 1

[UDF] ArrayEx.au3 - Fonctions de gestion de tableaux 1D/2D

Posté : lun. 10 sept. 2012 14:49
par Tlem
Suite à la fonction ArrayFileToArray, qui permettait de transformer un fichier style CVS ou similaire en tableau 2D, j'avais réalisé deux autres fonctions qui m'ont servies de temps en temps à la manipulation de chaine et de tableau.

Puis, suite à ce sujet, il à fallu que je me replonge dans le code déjà établit et tant qu'à faire, à l'amélioré.

Tout n'est sans doute pas parfait, mais chacun pourra améliorer ou proposer d'améliorer chacune de ces fonctions.

Voici donc la liste des fonctions disponibles dans cet UDF :
  • _StringToArray1D
  • _StringToArray2D
  • _ArrayToStringEx
  • _ArrayDeleteLines
  • _ArrayConcatenateEx
  • _Array2DToHtmlArray
  • _HtmlArrayToArray2D
_StringToArray1D vous permettra de convertir une chaine et donc un fichier en un tableau 1D.
Vous pourrez choisir :
  • - La ligne de début et de fin de conversion.
    - Avec ou sans index
    - Avec ou sans ligne vide
Cela pourrait donner une conversion du genre :

Code : Tout sélectionner

0,1,2,3,4
5,6,7,8,9
en un tableau comme ceci :

Code : Tout sélectionner

|0,1,2,3,4|
|5,6,7,8,9|
_StringToArray2D vous permettra de convertir une chaine et donc un fichier en un tableau 2D.
Vous pourrez choisir :
  • - La ligne de début et de fin de conversion.
    - Avec ou sans index
    - Avec ou sans ligne vide
Cela pourrait donner une conversion du genre :

Code : Tout sélectionner

0,1,2,3,4
5,6,7,8,9
en un tableau comme ceci :

Code : Tout sélectionner

| 0 | 1 | 2 | 3 | 4 |
| 5 | 6 | 7 | 8 | 9 |

_ArrayToStringEx vous permettra de convertir un tableau 2D ou 1D en une chaine de caractère et donc en fichier.
Vous déterminer :
  • - Le séparateur des éléments.
    - Le séparateur de lignes.
    - La ligne de début et de fin de conversion.
    - La colonne de début et de fin de conversion
    - Avec ou sans index
    - Avec ou sans ligne vide
Autrement dit, vous pourrez récupérer n'importe qu'elle partie d'un tableau 2D et l'utiliser pour traitement.

_ArrayDeleteLines vous permettra de supprimer facilement des lignes dans un tableau 1D ou 2D.
Vous pourrez choisir :
  • - Une utilisation sans paramètres complémentaires pour supprimer les lignes vide.
    - Le texte d'une ou plusieurs valeurs à chercher pour supprimer une ou plusieurs lignes.
    - Le type de recherche (Égal à ou contient la valeur).
_ArrayConcatenateEx vous permettra de concaténer deux tableaux qu'ils soient 1D ou 2D.

_Array2DToHtmlArray et _HtmlArrayToArray2D, comme leur nom l'indique, permettent de récupérer ou de créer des tableaux à partir de page internet ou fichier html.

Je joint à ce message l'UDF avec deux exemples (un en Français et l'autre en Anglais) qui vous permettra de mieux comprendre le fonctionnement de ces fonctions.

Bon code à tous.

Edit du 09/06/2012 :
  • - Ajout de la fonction _ArrayDeleteLines dont le code de base provient de la fonction _ArrayDeleteEmptyRows crée par mikell.
Edit du 09/09/2012 :
  • - Correction de la fonction _Array2DToString sur la prise en charge des tableaux 1D et renommée pour l'occasion en _ArrayToStringEx
    - Correction de la fonction _Array2DToString sur un bug lorsqu'un élément du tableau est égal à 0 et que le flag $EmptyLine est utilisé.
    - Ajout de la fonction _ArrayConcatenateEx inspirée en partie par PandiPanda pour la partie 2D + 2D
    - Mise à jour des fichiers d'exemples
► Afficher le texteHistorique des téléchargements

Re: [UDF] ArrayEx.au3 - Fonctions de gestion de tableaux 1D

Posté : lun. 10 sept. 2012 21:01
par TT22
Humm, c'est un UDF très bien réalisé avec des exemples assez parlants.
Je pense qu'il me servira beaucoup :wink:

Re: [UDF] ArrayEx.au3 - Fonctions de gestion de tableaux 1D

Posté : jeu. 08 nov. 2012 10:11
par TommyDDR
[Déplacement]

Bonjour,
Voici un UDF pour gérer les Array un peu plus poussé que Array.au3, entre autre pour les recherche dans des Array à 2 dimensions.