-1
votes

Comment obtenir des valeurs à l'aide de Regex à Python

Voici mon code d'exemple xxx

Sortie attendue:

p-123


2 commentaires

Quel problème à faire face? S'il vous plaît mentionner ça aussi. Cela aidera la communauté à vous fournir l'aide.Si vous voulez que seul P ait précédé une combinaison de chiffres; Vous pouvez utiliser (? i) p- \ d +


Pourquoi vous attendez-vous à cette production? Votre regex dit spécifiquement de tout correspondre à travers le support carré droit et la fin de la chaîne


3 Réponses :


0
votes
string = '[P-123,SHA-123]'
pattern = re.compile(r"(P.\d*)", re.MULTILINE | re.IGNORECASE)
result = pattern.search(string)
print(result[1])

0 commentaires

0
votes

Vous pouvez essayer cette regex \ w ([AZ] - [0-9] *) code> que extraire une lettre majuscule suivez - puis des chiffres

P-123


0 commentaires

1
votes

Si vous souhaitez faire correspondre ce format de données: xxx pré>

explication em> p>

  • ^ code> début de chaîne li>
  • \ [ code> correspondez [ code> li>
  • (? p code> nommé groupe de capture courbe code>
    • [A-Z] - \ D + CODE> correspondre à un seul caractère majuscule, - code> et 1+ chiffres li> ul> li>
    • ) code> close group li>
    • , [A-Z] + - \ D + CODE> Match 1+ caractères majuscules - code> et 1 chiffre ++ li>
    • ] code> correspondre ] code> li>
    • \ z code> fin de chaîne (ou utilisez $ code> si une nouvelle ligne après est autorisée) LI> ul>

      La valeur est nommée groupe de capture courbe code>. Vous pouvez également utiliser re.match au lieu de re.search car vous recherchez un seul groupe dans toute la chaîne. P>

      Démo Regex | Demo Python P>

      Exemple code em> p>

      P-123
      


0 commentaires