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
» Gestionnaire de Projets Panoramic
par Minibug Aujourd'hui à 2:10

» Mah-Jong européen new-look
par jjn4 Hier à 16:35

» Button_picture
par pascal10000 Hier à 11:41

» Pourquoi le compilateur stagne
par Minibug Hier à 11:09

» 4 (en analyse): SYNEDIT_TARGET_IS_OBJECT devient inactif
par Jack Hier à 10:09

» 3 (en analyse): Mauvaise interprétation du string "THEN"
par Jack Hier à 10:03

» KGF.dll - demandes ou suggestions de modifications ou ajouts
par Marc Hier à 10:00

» KGF_dll - nouvelles versions
par pascal10000 Mer 13 Déc 2017 - 17:27

» track_bar circulaire
par Klaus Mar 12 Déc 2017 - 13:54

» API Windows
par Klaus Mar 12 Déc 2017 - 3:21

» Cartes de voeux, menus, etc.
par JL35 Lun 11 Déc 2017 - 17:48

» a l'aide klaus
par Minibug Lun 11 Déc 2017 - 11:42

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Lun 11 Déc 2017 - 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
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 : 5613
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 : 5086
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 : 5613
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

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