El número que aparece más en una string usando Regex en python

Dada una string str , la tarea es extraer todos los números de una string y encontrar el elemento que aparece más usando Regex Python.

  • Se garantiza que no hay dos elementos que tengan la misma frecuencia
    • Ejemplos:
Input :geek55of55geeks4abc3dr2 
Output :55

Input :abcd1def2high2bnasvd3vjhd44
Output :2

Enfoque: extraiga todos los números de una string str usando la función re.findall() de la biblioteca de expresiones regulares en python, y con el uso de la función Contador de la biblioteca de colección podemos obtener el elemento más ocurrido.

A continuación se muestra la implementación de Python del enfoque anterior

# your code goes here# Python program to 
# find the most occurring element 
import re 
from collections import Counter 
  
def most_occr_element(word):
      
    # re.findall will extract all the elements 
    # from the string and make a list
    arr = re.findall(r'[0-9]+', word)    
      
    # to store maxm frequency
    maxm = 0  
  
    # to store maxm element of most frequency
    max_elem = 0
      
    # counter will store all the number with 
    # their frequencies
    # c = counter((55, 2), (2, 1), (3, 1), (4, 1))    
    c = Counter(arr)
    
    # Store all the keys of counter in a list in
    # which first would we our required element    
    for x in list(c.keys()):
  
        if c[x]>= maxm:
            maxm = c[x]
            max_elem = int(x)
                  
    return max_elem
  
# Driver program 
if __name__ == "__main__": 
    word = 'geek55of55gee4ksabc3dr2x'
    print(most_occr_element(word))
Producción:

55

Publicación traducida automáticamente

Artículo escrito por mohit kumar 29 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *