- Ce sujet contient 10 réponses, 3 participants et a été mis à jour pour la dernière fois par Axel Martinez, le il y a 5 années et 1 mois.
-
AuteurMessages
-
-
Bonjour, je suis à la recherche d’une expression REGEX qui dit : je récupère la donnée “0” de la colonne x, s’il est seul ou s’il ne contient pas de chiffre avant ou après.
Par exemple 1,02, 10, 100 doivent être récupéré, 0, ne doit pas être récupéré.
Merci d’avance pour votre aide. -
Bonjour,
Si j’ai bien compris, à partir d’une liste de type
1, 02, 10, 0, 100
on veut obtenir1, 02, 10, 100
?
Si c’est bien ça une regex typeREGEX(FIELDSTR('liste source'), '\s0+,', '')
devrait faire l’affaire.
Un espace, suivi d’un zéro ou plusieurs, suivi d’une virgule, remplacé par rien.Est-ce que j’ai bien compris la question ?
-
On pourrait aussi en profiter pour enlever le 0 avant le 2
REGEX(FIELDSTR('liste source'), '(?<=\s)0(,\s)?', '')
1, 02, 10, 0, 100
=>1, 2, 10, 100
-
Bonjour Nicolas, oui en effet, tu as bien compris la question :-), je test cela de suite.
Si tu me permet d’abuser, comment se fait-il que lorsque j’ai 12,50 par exemple dans ma base,EZC le traduit par 12.5 ? Il faudrait que je puisse conserver 2 chiffres après la virgule et conserver la virgule à la place du point. -
Je viens de tester les expressions :
La première donne cela : pour 0,05 et O : 05 et 0.
La seconde donne cela : pour 0,05 et 0 : ,05 et rien. (c’est mieux, mais il faudrait que le 0,05 reste 0,05)
Du coup, j’ai tenté cela mais sans succès :
REGEX(FIELDSTR(‘liste source’), ‘(?<=[0-9])0(,\s)?’, ”) -
Tu peux mettre la liste source complète et ce que tu veux en sortie ? Je n’avais pas compris que tu avais des décimales.
Tu as un séparateur , et des décimales séparées par des virgules ? Si c’est le cas on peut se baser sur l’espace.
1, 02, 1,05, 0, 100
regex(?<=\s)0(,\s)?
sortie1, 2, 1,05, 100
Sinon pour la question sur le formatage de ton nombre tu peux mettre le formatage du champ en mode personnalisé avec #,## pour avoir des décimales et un séparateur virgule.
-
Ok merci pour ton aide, pour le regex, cela fonctionne sauf lorsque l’on a par exemple 0,05, il donne ,05.
Pour le formatage des champs, c’est bien ce que je fais, mais malheureusement, cela ne fonctionne pas, la palette comprend bien pour les décimales, mais cela conserve les points, c’est bizarre… -
Ça commence à devenir plus marrant 🙂
1, 002, 1,05, 0, 100, 0,05
Regex(?<=\s)0+(?!,\d)(,\s)?
=>1, 2, 1,05, 100, 0,05
On supprime : un ou plusieurs zéro précédé d’un espace mais non suivi par une virgule suivie d’un chiffre et potentiellement la virgule et l’espace qui suit.
Pour ton formatage de champs tu es sur d’avoir une virgule entre # et ## ?
-
Bravo, le REGEX est bon.
Le formatage de champs est bien ##,##, c’est étonnant… -
Hello, avec une petite mise à jour de mon EZC, ça fonctionne.
Encore merci pour ton aide et à bientôt
Christophe -
Nickel pour ton problème, n’hésite pas à reposter si tu as de nouveaux un soucis 🙂
Je passe le topic en résolu
-
-
AuteurMessages
The topic ‘Créer un champ personnalisé avec REGEX’ is resolved and closed to new replies.