Outils pour utilisateurs

Outils du site


cold:tutoriaux:regex

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cold:tutoriaux:regex [2015/11/19 15:26]
florian [Capture]
cold:tutoriaux:regex [2023/03/17 09:56] (Version actuelle)
Ligne 12: Ligne 12:
   (?​P<​nom_du_groupe_de_capture>​...)   (?​P<​nom_du_groupe_de_capture>​...)
  
-La sous-expression ​régulière ​(ici symbolisée par ...  ) qui aura été trouvée sera accessible par le nom **//​nom_du_groupe_de_capture//​**+La sous-expression ​rationnelle(ici symbolisée par ...  ) qui aura été trouvée sera accessible par le nom **//​nom_du_groupe_de_capture//​**
  
-Dès lors nous pouvons y faire référence dans la suite de l'​expression ​régulière ​elle-même :+Dès lors nous pouvons y faire référence dans la suite de l'​expression ​rationnelle ​elle-même :
   (?​P=nom_du_groupe_de_capture)   (?​P=nom_du_groupe_de_capture)
  
Ligne 44: Ligne 44:
   @keepdigits(@self)   @keepdigits(@self)
   ​   ​
-Ce qui pourrait fonctionner ​si nous spécifions correctement ​la longueur du champ.+Mais dans notre exemple ci-dessus ​si la longueur du champ ou les paramétrage de positionnement sont trop laxistes nous avons le risque de récupérer aussi la référence client.
  
-Soit le filtre ​de champ suivant +Nous pouvons procéder autrement en capturant explicitement ​le premier numéro ​de la ligne: 
-  Numero de facture : (?​P<​numero>​\d+)+  Numero de facture : (?​P<​numero>​\d+)\D*
  
-Pour ne garder ​que le numero ​on fera ceci dans le champ post de formatage :+Le premier numéro est la première suite de chiffres non interrompue. Elle prend fin dès lors que l'on rencontre autre chose qu'un chiffre (comme un espace ou une lettre).
  
-  @caststr(@<​numero>​)+{{wiki:​icons:​info.png}} \D est équivalent à la séquence [^0-9]. Elle identifie tout caractère sauf un chiffre.
   ​   ​
 ===== Recherche multi-ligne ===== ===== Recherche multi-ligne =====
Ligne 64: Ligne 64:
 Comme le montre la capture nous utilisons un champ de type variable et nous ciblons à l'aide des paramètres de position la zone de recherche. La zone de recherche est encadrée en rouge (l'​image est tronquée, elle s'​étend jusqu'​au bas du document). Comme le montre la capture nous utilisons un champ de type variable et nous ciblons à l'aide des paramètres de position la zone de recherche. La zone de recherche est encadrée en rouge (l'​image est tronquée, elle s'​étend jusqu'​au bas du document).
  
-Et l'​expression ​régulière ​que nous utilisons est la suivante :+Et l'​expression ​rationnelle ​que nous utilisons est la suivante :
   Facture N.([^\d]|\n)*(?​P<​num>​\d+)   Facture N.([^\d]|\n)*(?​P<​num>​\d+)
  
cold/tutoriaux/regex.1447946761.txt.gz · Dernière modification: 2023/03/17 09:56 (modification externe)