Sujet : Variantes chiffres/répétitions (was: Aide Utomator)
De : om+news (at) *nospam* miakinen.net (Olivier Miakinen)
Groupes : fr.comp.lang.regexpDate : 15. Aug 2022, 08:51:48
Autres entêtes
Organisation : There's no cabale
Message-ID : <tdcqe4$2e9s$1@cabale.usenet-fr.net>
References : 1 2 3 4 5 6 7
User-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0 SeaMonkey/2.53.1
Bonjour,
Le 15/08/2022 à 07:03, Dominique a écrit :
J'ai toujours recherché des chiffres avec [0-9]{1,}( comme dans LibreOffice)
Voici un exemple en Pythom avec la librairie re :
modele1='[0-9]{1,3}[:][0-9]{2}[:][0-9]{2}'
modele2='[0-9]{1,3}[:][0-9]{2}[.][0-9]{1,}'
Là, je vérifie la bonne saisie d'un angle ou d'une heure en ddd:mm:ss ou
ddd:mm.mmmmm
Ça fonctionne très bien, mais est-ce correct ?
Oui, en tout cas avec les regexp de type perl qui sont les plus avancées
on a déjà les équivalences suivantes :
{1,} == +
{0,} == *
C'est le cas en Python : <
https://docs.python.org/3/library/re.html>
Mais là où tu as absolument raison, c'est que dans un programme qui
pourrait être sensible et éventuellement sujet à une attaque par un
pirate, il est mille fois préférable d'écrire [0-9] plutôt que \d :
<
https://docs.python.org/3/library/re.html>
§
\d
For Unicode (str) patterns:
Matches any Unicode decimal digit (that is, any character in Unicode
character category [Nd]). This includes [0-9], and also many other
digit characters. If the ASCII flag is used only [0-9] is matched.
§
-- Olivier Miakinen