FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Une autre façon de terminer une application.
par Francis-mr Aujourd'hui à 12:07

» Compilateur FBPano
par jean_debord Aujourd'hui à 10:09

» Copier / coller du texte à partir de la fenêtre de commandes
par jean_debord Aujourd'hui à 9:46

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par papydall Aujourd'hui à 5:01

» Mettre en windows en veille
par papydall Aujourd'hui à 4:15

» Stretch_on ne stretch plus...
par papydall Hier à 15:22

» Pb 18 (en analyse): RESTORE_LABEL avec DATA à la fin
par Jack Hier à 13:21

» Problème de traitement des opérateurs avec le compilateur.
par Pedro Alvarez Sam 19 Aoû 2017 - 20:01

» Pb 17 (résolu): ITEM_SELECT ne fonctionne pas
par Jack Jeu 17 Aoû 2017 - 19:26

» un nouveau editeur panobasic
par Jean Claude Jeu 17 Aoû 2017 - 10:18

» Le compilateur.
par Pedro Alvarez Jeu 17 Aoû 2017 - 8:36

» Pb 16 (résolu): ON_CLOSE plante à l'exécution
par Jack Mer 16 Aoû 2017 - 20:00

» Pb 15 (résolu): TIMER_ON plante à l'exécution
par Jack Mer 16 Aoû 2017 - 19:58

» KGF_dll - nouvelles versions
par Yannick Dim 13 Aoû 2017 - 17:35

» probleme d'outil
par Yannick Dim 13 Aoû 2017 - 17:32

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2017
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 Fonctions sur les chaînes

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
papydall

avatar

Nombre de messages : 5518
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Fonctions sur les chaînes   Mar 4 Fév 2014 - 2:17

Panoramic dispose de la fonction NUMERIC(C$) qui retourne 1 si C$ représente une valeur numérique, o sinon.

Voici deux fonctions ALPHABETIC(C$) et ALPHANUMERIC(C$) qui testent si C$ représente une valeur alphabétique ou alphanumérique.


Code:

rem ============================================================================
rem      Fonctions_Strings
rem        Par Papydall
rem ============================================================================
' Panoramic dispose de la fonction NUMERIC(C$) qui retourne 1 si C$ représente
' une valeur numérique, o sinon.
' Voici deux fonctions ALPHABETIC(C$) et ALPHANUMERIC(C$) qui testent si C$
' représente une valeur alphabétique ou alphanumérique
rem ============================================================================

Alphabetic("aze_rt")    : message Alphabetic
AlphaNumeric("abxc3")    : message AlphaNumeric


end
rem ============================================================================
' Retourne Alphabetic = 1 si C$ ne contient que des lettres (a --> z, A --> Z)
' Retourne Alphabetic = 0 dans le cas contraire
Sub Alphabetic(c$)
    dim_local l,i
    if variable("Alphabetic") = 0 then dim Alphabetic
    l = len(c$)
    for i = 1 to l
      if (asc(upper$(mid$(c$,i,1))) > 64) and (asc(upper$(mid$(c$,i,1))) < 91)
          Alphabetic = 1
      else
          Alphabetic = 0 : exit_for
      end_if
    next i
END_SUB
rem ============================================================================
' Retourne AlphaNumeric = 1 si C$ ne contient que des lettres et/ou des chiffres
' Retourne AlphaNumeric = 0 dans le cas contraire
SUB AlphaNumeric(c$)
    dim_local l,i
    if variable("AlphaNumeric") = 0 then dim AlphaNumeric
    l = len(c$)
    for i = 1 to l
      if ((asc(upper$(mid$(c$,i,1))) > 64) and (asc(upper$(mid$(c$,i,1))) < 91)) or ((asc(mid$(c$,i,1)) > 47) and (asc(mid$(c$,i,1)) < 58))
          AlphaNumeric = 1
      else
          AlphaNumeric = 0 : exit_for
      end_if
    next i
END_SUB
rem ============================================================================


Dernière édition par papydall le Mar 4 Fév 2014 - 19:32, édité 1 fois (Raison : Correction d'un bug)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Jean Claude

avatar

Nombre de messages : 4989
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Fonctions sur les chaînes   Mar 4 Fév 2014 - 9:23

très utile,

il semble que tu considère _ comme un caractère alphabétique.

Code:
Alphabetic("azert_y")    : message "Alphabetic="+ str$(Alphabetic)
AlphaNumeric("a09")    : message "AlphaNumeric="+ str$(AlphaNumeric)

C'est discutable.

Merci.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5518
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Fonctions sur les chaînes   Mar 4 Fév 2014 - 19:33

Une fois de plus, je suis tombé dans le piège.
J’ai mal utilisé mon algorithme.
J’ai rectifié mon tir heu mon code.
Voici le code correct.

Code:

rem ============================================================================
rem       Fonctions_Strings
rem         Par Papydall
rem ============================================================================
' Panoramic dispose de la fonction NUMERIC(C$) qui retourne 1 si C$ représente
' une valeur numérique, o sinon.
' Voici deux fonctions ALPHABETIC(C$) et ALPHANUMERIC(C$) qui testent si C$
' représente une valeur alphabétique ou alphanumérique
rem ============================================================================

Alphabetic("aze_rt")     : message Alphabetic
AlphaNumeric("abxc3")    : message AlphaNumeric


end
rem ============================================================================
' Retourne Alphabetic = 1 si C$ ne contient que des lettres (a --> z, A --> Z)
' Retourne Alphabetic = 0 dans le cas contraire
Sub Alphabetic(c$)
   dim_local l,i
   if variable("Alphabetic") = 0 then dim Alphabetic
   l = len(c$)
   for i = 1 to l
     if (asc(upper$(mid$(c$,i,1))) > 64) and (asc(upper$(mid$(c$,i,1))) < 91)
         Alphabetic = 1
     else
         Alphabetic = 0 : exit_for
     end_if
   next i
END_SUB
rem ============================================================================
' Retourne AlphaNumeric = 1 si C$ ne contient que des lettres et/ou des chiffres
' Retourne AlphaNumeric = 0 dans le cas contraire
SUB AlphaNumeric(c$)
   dim_local l,i
   if variable("AlphaNumeric") = 0 then dim AlphaNumeric
   l = len(c$)
   for i = 1 to l
     if ((asc(upper$(mid$(c$,i,1))) > 64) and (asc(upper$(mid$(c$,i,1))) < 91)) or ((asc(mid$(c$,i,1)) > 47) and (asc(mid$(c$,i,1)) < 58))
         AlphaNumeric = 1
     else
         AlphaNumeric = 0 : exit_for
     end_if
   next i
END_SUB
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re: Fonctions sur les chaînes   

Revenir en haut Aller en bas
 
Fonctions sur les chaînes
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Bbox TV s'enrichit de 5 nouvelles chaînes
» Chaîne(s) en portugais ?
» NOUVEAU SONDAGE: Quelle chaîne TV souhaitez-vous sur Bbox ?
» E! Entertainment chaîne de base ou optionnelle ?
» Nouvelle chaîne de type Évènement : 20 - Dracula TV

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: