Python >> Tutoriel Python >  >> Python Tag >> RegEx

Regex pour faire correspondre les montants en dollars avec les cents facultatifs

Problème :Comment faire correspondre les montants en dollars dans une chaîne donnée ? Si des montants en cents sont donnés, ceux-ci doivent également correspondre.

Solution  :Vous pouvez utiliser le modèle d'expression régulière '(\$[0-9]+(.[0-9]+)?)' pour trouver tous les nombres qui commencent par un symbole dollar, suivi d'un nombre arbitraire de chiffres numériques, suivi d'un point décimal facultatif et d'un nombre arbitraire de chiffres numériques.

Voici le code :

import re

report = '''
If you invested $1 in the year 1801, you would have $18087791.41 today.
This is a 7.967% return on investment.
But if you invested only $0.25 in 1801, you would end up with $4521947.8525.
'''

dollars = [x[0] for x in re.findall('(\$[0-9]+(\.[0-9]+)?)', report)]

print(dollars)

Avant de terminer, jetez un œil à cette blague sur les regex 🙂

Humour Regex

Livre Python One-Liners :maîtrisez d'abord la ligne unique !

Les programmeurs Python amélioreront leurs compétences en informatique avec ces lignes utiles.

Python One-Liners vous apprendra à lire et à écrire des « lignes simples » :des déclarations concises de fonctionnalités utiles regroupées dans une seule ligne de code. Vous apprendrez à décompresser et à comprendre systématiquement n'importe quelle ligne de code Python, et à écrire du Python éloquent et puissamment compressé comme un expert.

Les cinq chapitres du livre couvrent (1) les trucs et astuces, (2) les expressions régulières, (3) l'apprentissage automatique, (4) les principaux sujets de science des données et (5) les algorithmes utiles.

Des explications détaillées des one-liners introduisent les concepts clés de l'informatique etdéveloppez vos compétences en matière de codage et d'analyse . Vous découvrirez les fonctionnalités Python avancées telles que la compréhension de liste , tranchage , fonctions lambda , expressions régulières , carte et réduire fonctions et affectations de tranches .

Vous apprendrez également à :

  • Exploiter les structures de données pour résoudre des problèmes réels , comme utiliser l'indexation booléenne pour trouver des villes avec une pollution supérieure à la moyenne
  • Utiliser les bases de NumPy comme tableau , forme , axe , tapez , diffusion , indexation avancée , tranchage , tri , recherche , agrégation , et statistiques
  • Calculer des statistiques de base de tableaux de données multidimensionnels et les algorithmes K-Means pour l'apprentissage non supervisé
  • Créer davantage d'expressions régulières avancées en utilisant le regroupement et groupes nommés , anticipations négatives , caractères échappés , espaces blancs, jeux de caractères (et jeux de caractères négatifs ) et opérateurs gourmands/non gourmands
  • Comprendre un large éventail de sujets informatiques , y compris les anagrammes , palindromes , surensembles , permutations , factorielles , nombres premiers , Fibonacci chiffres, obscurcissement , recherche , et tri algorithmique

À la fin du livre, vous saurez comment écrire Python dans sa forme la plus raffinée , et créez de belles pièces concises d'"art Python" en une seule ligne.

Obtenez vos Python One-Liners sur Amazon !!


Prochain article