Maison >développement back-end >Tutoriel Python >Comment puis-je détecter la présence de nombres dans une chaîne ?

Comment puis-je détecter la présence de nombres dans une chaîne ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-30 06:11:19677parcourir

How Can I Detect the Presence of Numbers Within a String?

Identification de caractères numériques dans des chaînes

De nombreux problèmes de programmation se concentrent sur la détection de lettres dans des chaînes numériques. Cependant, cette requête recherche une solution qui identifie les nombres dans des chaînes censées être infinies. L'objectif est d'empêcher l'acceptation de chaînes contenant des chiffres, telles que "Je possède 1 chien".

La fonction isdigit(), couramment utilisée à cet effet, ne renvoie True que si tous les caractères d'une chaîne sont des nombres. Au lieu de cela, nous avons besoin d'une méthode qui vérifie la présence de chiffres dans une chaîne.

Solution utilisant l'itération de chaîne

Une approche consiste à parcourir chaque caractère de l'entrée chaîne et vérifier s’il s’agit d’un nombre. Ceci peut être réalisé en utilisant la fonction any() avec la méthode isdigit().

def has_numbers(inputString):
    return any(char.isdigit() for char in inputString)

Exemple :

has_numbers("I own 1 dog")  # True
has_numbers("I own no dog")  # False

Solution utilisant Regular Expressions

Une solution plus concise peut être implémentée à l'aide d'expressions régulières. L'extrait de code suivant utilise la fonction re.search() pour rechercher n'importe quel chiffre dans une chaîne.

import re

def has_numbers(inputString):
    return bool(re.search(r"\d", inputString))

Exemple :

has_numbers("I own 1 dog")  # True
has_numbers("I own no dog")  # False

Les deux solutions sont efficaces déterminez si une chaîne contient des nombres, ce qui vous permet de rejeter les chaînes qui violent l'objectif visé d'être sans nombre.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn