Deutsch English Français Italiano |
<tttu3m$1dv4$1@cabale.usenet-fr.net> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!reader01.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!.POSTED!not-for-mail From: Olivier Miakinen <om+news@miakinen.net> Newsgroups: fr.comp.sys.mac.programmation Subject: Re: Verifier la presence d'un mot dans tous les champs Date: Fri, 3 Mar 2023 23:59:03 +0100 Organization: There's no cabale Lines: 53 Message-ID: <tttu3m$1dv4$1@cabale.usenet-fr.net> References: <t0lcik$1616$1@cabale.usenet-fr.net> <dg1u2h9ms324so97iqqac5jfclhunbt5u0@4ax.com> <t0n2vh$23a2$1@cabale.usenet-fr.net> <t8162d$1rbm$1@gioia.aioe.org> <t81ks1$2ipl$1@cabale.usenet-fr.net> <ttkveo$7no$1@shakotay.alphanet.ch> <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> NNTP-Posting-Host: 94.36.4.93.rev.sfr.net Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Trace: cabale.usenet-fr.net 1677884342 47076 93.4.36.94 (3 Mar 2023 22:59:02 GMT) X-Complaints-To: abuse@usenet-fr.net NNTP-Posting-Date: Fri, 3 Mar 2023 22:59:02 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0 SeaMonkey/2.53.1 In-Reply-To: <ttto6k$p6b$1@shakotay.alphanet.ch> Bytes: 3315 Le 03/03/2023 à 22:18, M.V. a écrit : > >> Eh bien par exemple la regexp "[a-z] [0-9]" permet de détecter une >> chaîne contenant une lettre minuscule sans accent, n'importe laquelle, >> suivie d'une espace, suivie d'un chiffre, n'importe lequel. >> >> Ainsi cela répondra oui à "toto 55" parce qu'il y a "o 5" dedans, >> mais non à "55 toto". > > OK, je vois. Oui, mais c'était un exemple tout simple. > C'est un tout petit moins simple en AppleScript mais ça se fait quand > même très bien : prendre le 1er caractère de l'expression à tester, > regarder s'il est dans [a-z], si oui regarder s'il est suivi d'une > espace et si oui encore regarder si celle-ci est suivie par un chiffre > entre 0 et 9. > Si la réponse est NON à un des 3 critères alors passer au 2ème caractère > de l'expression à tester, regarder s'il est dans [a-z], si oui regarder > etc. > > Ça semble long quand on l'explicite mais un script fait ça en quelques > millièmes de seconde pour une expression moins longue qu'un roman avec > la chaine valide à la page 859 ! Alors prenons un autre exemple. Comment écrirais-tu un programme capable de détecter si une chaîne de caractères est un nombre en virgule flottante ? Voici quelques exemples de nombres valides : "0" "+1.5" "1e+99" "-19E-7" "1.7e003" ".3" Et voici quelques exemples non valides : "" "1.2.3" "1E3.4" "--1" "e+99" "." "+1e" Avec les regexp, le programme est par exemple : /^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/ -- Olivier Miakinen