Regex para encontrar números que se repiten

¿Alguien puede ayudarme o dirigirme para construir una expresión regular para validar los números que se repiten?

ej .: 11111111, 2222, 99999999999, etc.

Debe validar por cualquier longitud.

\b(\d)\1+\b 

Explicación:

 \b # match word boundary (\d) # match digit remember it \1+ # match one or more instances of the previously matched digit \b # match word boundary 

Si 1 también debe ser una coincidencia válida (cero repeticiones), use un * lugar del + .

Si también desea permitir repeticiones más largas ( 123123123 ) use

 \b(\d+)\1+\b 

Si la expresión regular se debe aplicar a toda la cadena (en lugar de encontrar “números de repetición en una cadena más larga), use anclajes de inicio y final de línea en lugar de \b :

 ^(\d)\1+$ 

Editar: cómo hacer coincidir exactamente lo opuesto, es decir, un número donde no todos los dígitos son iguales (excepto si el número entero es simplemente un dígito):

 ^(\d)(?!\1+$)\d*$ ^ # Start of string (\d) # Match a digit (?! # Assert that the following doesn't match: \1+ # one or more repetitions of the previously matched digit $ # until the end of the string ) # End of lookahead assertion \d* # Match zero or more digits $ # until the end of the string 

Para hacer coincidir varias repeticiones de un solo dígito, puede escribir ([0-9])\1* .

Esto coincide con [0-9] en un grupo, luego coincide con 0 o más repeticiones ( \1 ) de ese grupo.

Puede escribir \1+ para que coincida con una o más repeticiones.

Use una referencia inversa:

 (\d)\1+ 

Probablemente quiera usar algún tipo de anclaje ^(\d)\1+$ o \b(\d)\1+\b

puede obtener texto o números repetidos fácilmente mediante retro-referencia, eche un vistazo al siguiente ejemplo:

regexr.com

este código simplemente significa cualquiera que sea el patrón dentro de []. ([patrón interno]) el \1 buscará lo mismo que el patrón interno hacia adelante.

Usé esta expresión para darme todos los números de teléfono con el mismo dígito.

Básicamente, significa dar 9 repeticiones de la primera repetición original de un número dado, lo que resulta en 10 del mismo número en una fila.

([0-9]) \ 1 {9}