Bonjour à tous,
Je poste ça ici parce que mon programme utilisant les regex est en C++ (+Boost). Je n'ai pas vu de section "spécialisée" pour les regex. Bref, il mérite p-e d'être déplacé. je laisse les modétateurs juger.
Bref, voilà le soucis :
J'ai en entrée de mon programme des fichiers XML desquels j'extrais entre autres des dates respectant le format ISO 8601.
Typiquement, les dates sont sous deux formes principales :
Mon regex se présente sous cette forme pour le moment :2008-09-22T13:20:35.29Z (qui passe sans problème)
ou
2008-09-22T13:20:35.29 (même forme mais sans le Z final)
Ce regex prend en compte encore quelques déclinaisons de ce format de date qui fonctionnent bien mais plante sur la version sans Z... et je vois pas pouquoi... Une idée?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 boost::regex pattern("^([0-9]{4}-?[0-9]{1,2}-?[0-9]{1,2})T([0-9]{1,2}):?([0-9]{1,2}):?([0-9]{1,2})[\\.,\\,]?([0-9]*)(Z?|([-,+])([0-9]{1,2}):?([0-9]{1,2}))$");
Partager