PureBasic

Forums PureBasic
Nous sommes le Ven 06/Déc/2019 8:43

Heures au format UTC + 1 heure




Poster un nouveau sujet Répondre au sujet  [ 4 messages ] 
Auteur Message
 Sujet du message: Split()
MessagePosté: Ven 29/Aoû/2014 20:41 
Hors ligne
Avatar de l’utilisateur

Inscription: Dim 22/Aoû/2010 15:24
Messages: 6860
Localisation: IDF (Yvelines)
Cette procédure retourne un tableau de chaînes, chacune d'elle étant une sous-chaîne du paramètre string extraite en utilisant le séparateur delimiter.

C'est une fonctionnalité qui existe en JavaScript par exemple et j'avais envie d'avoir cette fonctionnalité en PureBasic.

Un tout petit code pour sastifaire cette envie :)
Code:
Procedure Split(Array Array.s(1), String.s, Delimiter.s)
  Protected File, i, j, Buffer.s
     
  j = CountString(String, Delimiter) 
  ReDim Array(j)
  For i=1 To j+1 
    Array(i-1) = StringField(String, i, Delimiter)
  Next
EndProcedure

;-Zone de test
Dim Jours.s(0)

Split(Jours(), "lundi mardi mercredi jeudi vendredi samedi dimanche", " ")

;Vérification
For n=0 To ArraySize(Jours())
  Debug Jours(n)
Next
Ce n'est pas grand chose mais c'est pratique.

_________________

➽ Config PureBasic : i3, RAM 4Go, NVidia (1024 Mo), Windows 10 - PB 5.70 LTS
➽ Je papote aussi sur http://purebasic.chat

➽ Sites personnels http://falsam.com & EasySprite.js

➽ Je ne réponds pas aux MP techniques


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Split()
MessagePosté: Mar 02/Sep/2014 17:56 
Hors ligne
Avatar de l’utilisateur

Inscription: Sam 23/Sep/2006 18:32
Messages: 6659
Localisation: Isere
Et en VB6 ...
Merci Falsam 8)

_________________
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Split()
MessagePosté: Mar 02/Sep/2014 21:40 
Hors ligne
Avatar de l’utilisateur

Inscription: Ven 25/Avr/2008 11:14
Messages: 1342
sympa :D merci falsam


Haut
 Profil  
Répondre en citant le message  
 Sujet du message: Re: Split()
MessagePosté: Mar 02/Sep/2014 22:08 
Hors ligne

Inscription: Sam 23/Fév/2008 17:58
Messages: 556
Bonjour à tous

Voici une autre façon avec les REGEX

Code:
; If CreateRegularExpression(0,"[a-zA-Z]*")  ; Avec des minuscules ou des majuscules
If CreateRegularExpression(0,"[a-z]*")  ; Ici Avec seulement des minuscules

    Dim Resultat$(0)
    Nb=ExtractRegularExpression(0,"lundi mardi mercredi jeudi vendredi samedi dimanche",Resultat$())
    For k=0 To Nb-1
      Debug Resultat$(k)
    Next
  Else
    Debug RegularExpressionError()
  EndIf
 



A+

_________________
Il est fort peu probable que les mêmes causes ne produisent pas les mêmes effets.(Einstein)
Et en logique positive cela donne.
Il est très fortement probable que les mêmes causes produisent les mêmes effets.


Haut
 Profil  
Répondre en citant le message  
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 4 messages ] 

Heures au format UTC + 1 heure


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 3 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages

Rechercher:
Aller à:  

 


Powered by phpBB © 2008 phpBB Group | Traduction par: phpBB-fr.com
subSilver+ theme by Canver Software, sponsor Sanal Modifiye