Solution
Cette regex
asd-[0-9][a-z]-([0-9]{4})([0-9]{2})([0-9]{2})
fera le
suivant
- exigent la chaîne à
- début avec les personnages
asd-
- suivi d'un numéro d'une lettre et un
-
- suivie par des chiffres ressemblant à une date.
- crée les groupes de capture suivants
- 0 la chaîne entière correspondance
- 1 l'année
- 2 mois
- 3 le jour
Remarque: Th est regex ne valide pas la date est légitime.
Exemple
Voir aussi Live Demo
Étant donné le texte exemple suivant
bsd-3A-20170523
asd-3A-20170523
NotTheDroidsYourLookingFor-20171131
asd-1D-20170523
Renvoie la suivante correspond à
Match 1
Full match 16-31 `asd-3A-20170523`
Group 1. 23-27 `2017`
Group 2. 27-29 `05`
Group 3. 29-31 `23`
Match 2
Full match 68-83 `asd-1D-20170523`
Group 1. 75-79 `2017`
Group 2. 79-81 `05`
Group 3. 81-83 `23`
Explication
NODE EXPLANATION
--------------------------------------------------------------------------------
asd- 'asd-'
--------------------------------------------------------------------------------
[0-9] any character of: '0' to '9'
--------------------------------------------------------------------------------
[a-z] any character of: 'a' to 'z'
--------------------------------------------------------------------------------
- '-'
--------------------------------------------------------------------------------
( group and capture to \1:
--------------------------------------------------------------------------------
[0-9]{4} any character of: '0' to '9' (4 times)
--------------------------------------------------------------------------------
) end of \1
--------------------------------------------------------------------------------
( group and capture to \2:
--------------------------------------------------------------------------------
[0-9]{2} any character of: '0' to '9' (2 times)
--------------------------------------------------------------------------------
) end of \2
--------------------------------------------------------------------------------
( group and capture to \3:
--------------------------------------------------------------------------------
[0-9]{2} any character of: '0' to '9' (2 times)
--------------------------------------------------------------------------------
) end of \3
Pouvez-vous nous montrer ce que vous avez essayé? Nous pouvons peut-être partir de là. – louisfischer