Deutsch   English   Français   Italiano  
<tu25rd$i78$1@shakotay.alphanet.ch>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!weretis.net!feeder8.news.weretis.net!news.imp.ch!news.alphanet.ch!alphanet.ch!.POSTED!not-for-mail
From: Joseph B <josephb@nowhere.invalid>
Newsgroups: fr.comp.sys.mac.programmation
Subject: Re: Verifier la presence d'un mot dans tous les champs
Date: Sun, 5 Mar 2023 13:35:41 -0000 (UTC)
Organization: =?UTF-8?B?Qm9m4oCm?=
Message-ID: <tu25rd$i78$1@shakotay.alphanet.ch>
References: <t0lcik$1616$1@cabale.usenet-fr.net> <ttl07l$u8m$1@cabale.usenet-fr.net>
 <ttl3bh$svv$1@shakotay.alphanet.ch> <ttm19j$1bll$1@cabale.usenet-fr.net>
 <ttm1u5$1br0$1@cabale.usenet-fr.net> <ttm4os$inu$1@shakotay.alphanet.ch>
 <1q6wq7l.wkh7dy1ty8eazN%andre_favre@af.invalid>
 <ttn9em$h0s$1@shakotay.alphanet.ch> <ttpqam$7tm$1@shakotay.alphanet.ch>
 <ttt1b6$lk6v$1@dont-email.me> <tttjb9$1ais$1@cabale.usenet-fr.net>
 <tttjmb$5hk$1@shakotay.alphanet.ch> <tttl0q$1asu$1@cabale.usenet-fr.net>
 <tttltt$elj$1@shakotay.alphanet.ch> <tttmh9$1caj$1@cabale.usenet-fr.net>
 <ttto6k$p6b$1@shakotay.alphanet.ch> <tttu3m$1dv4$1@cabale.usenet-fr.net>
 <ttv1vi$ugge$1@dont-email.me> <ttvkp8$j5h$1@shakotay.alphanet.ch>
 <ttvlae$lka$2@shakotay.alphanet.ch> <ttvn4b$t4d$1@shakotay.alphanet.ch>
 <tu01tv$21rv$1@cabale.usenet-fr.net> <tu1ufg$ho5$1@shakotay.alphanet.ch>
 <tu1usc$2hs5$1@cabale.usenet-fr.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 5 Mar 2023 13:35:41 -0000 (UTC)
Injection-Info: shakotay.alphanet.ch; posting-account="joseph25b";
	logging-data="18664"; mail-complaints-to="usenet@alphanet.ch"; posting-host="49079705135647d36d766b8a46d17cd4.nnrp.alphanet.ch"
User-Agent: MacCafe/2.10/peaberry (Mac OS X 10.13.6 (17G14042) - iMac12,1)
Cancel-Lock: sha1:UbBna9+2pZESR/z5ieXrYPJPuXI= sha256:xA9ZumGkz4TtILrZ8UIqWL0tqW0Zey1LHA+SX0WrYHw= sha256:JO77WruXEIziMrkEPMtSfskfXuuM6t9XBU49QfNrg0s=
X-No-Archive: YES
In-Reply-To: <tu1usc$2hs5$1@cabale.usenet-fr.net>
Bytes: 4231
Lines: 58

Olivier Miakinen, le 5 mars 2023 à 12:36 dans
<news:tu1usc$2hs5$1@cabale.usenet-fr.net> écrivait :

> Il s'agissait de reconnaître la validité d'une chaîne
> pour représenter un nombre selon la syntaxe commune à la majorité
> des langages de programmation (C, java, javascript, python, etc.),
> et la question était de savoir comment écrire en Applescript un
> programme sachant reconnaître /cette/ syntaxe qui n'est pas la
> sienne.

Je te répondrai que c'est au programmeur en C, Perl ou autre de
considérer qu'il va devoir traiter des entrées numériques avec un
séparateur décimal "," s'il fait tourner son programme dans un pays qui
l'utilise au lieu du "." qu'il utilise en interne.

Et à considérer comme les programmes connus s'en tirent correctement en
France, on peut assurer que c'est bien ce qu'il font.
Il n'est pas raisonnable d'inverser la charge de prévoir qui et où sera
l'utilisateur de ma feuille Excel française, par exemple ;-)

L'intérêt est plutôt d'écrire une routine (en applescript pour le thème
de cette discussion) qui soit universelle et transparente,
d'identification, et si besoin mise en conformité, d'une valeur
numérique externe à injecter dans une fonction de calcul du programme.

Le script que M. V. proposait dans
<news:ttvn4b$t4d$1@shakotay.alphanet.ch>
moyennant une infime modification (permutation entre les deux types de
séparateur, selon le pays) remplirait bien ce rôle 
(j'ai fait une adaptation avec son dernier script juste pour avoir les
deux listes affichées, qui retourne, quel que soit le pays :

set numList to {"0", "+1,5", "1e+99", "-19E-7", "1.7e003", ".3",
"1.2.3", "", "1E3.4", "--1", "e+99", ".", "+1e"}

Les éléments valides sont :
  0
  +1,5    (--> la fonction "Replace()" transforme en "." si besoin) 
  1e+99
  -19E-7
  1.7e003 (--> la fonction "Replace()" transforme en "," si besoin)
  .3      (--> la fonction "Replace()" transforme en "," si besoin)
  

Les éléments invalides sont :
  1.2.3
  
  1E3.4
  --1
  e+99
  .
  +1e
)

-- 
 J.B.
Votre Seigneurie, je ne peux pas induire le rayon parce que la turbulence
statique est sur le point d'inverser le bi-calcifrage balistique !