DevToolBoxFREE
BlogAdvertise

20 Patrones Regex que todo desarrollador necesita: Ejemplos listos para copiar

11 min de lecturapor DevToolBox

Deja de escribir regex desde cero. Aquí hay 20 patrones probados.

Prueba patrones con nuestro Regex Tester →

Patrones de validación

1. Email Address

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

Coincide: user@example.com, john.doe+tag@company.co.uk

No coincide: user@, @example.com, user@.com

2. URL (HTTP/HTTPS)

^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&/=]*)$

Coincide: https://example.com, http://www.site.co.uk/path?q=1

3. Phone Number (International E.164)

^\+[1-9]\d{1,14}$

Coincide: +14155552671, +442071234567

Para números internacionales. US: ver patrón #4.

4. US Phone Number

^(\+1)?[\s.-]?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$

Coincide: (415) 555-2671, 415-555-2671, +1 415.555.2671

5. Strong Password

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$

Requisitos: 8+ caracteres, mayúscula, minúscula, dígito, especial.

Coincide: MyP@ss1word | No coincide: password, 12345678

6. IPv4 Address

^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$

Coincide: 192.168.1.1, 10.0.0.255

No coincide: 256.1.1.1, 192.168.1

7. IPv6 Address (Simplified)

^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$

Direcciones IPv6 completas como 2001:0db8:85a3:0000:0000:8a2e:0370:7334

8. Date (YYYY-MM-DD)

^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$

Coincide: 2026-01-15, 2025-12-31

No coincide: 2026-13-01, 2026-00-15

Patrones de extracción

9. Extract All Emails from Text

[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}

Con flag global (g) encuentra todos los emails.

10. Extract All URLs from Text

https?:\/\/[^\s<>\"']+

Patrón URL más simple para extracción.

11. Extract HTML Tags

<([a-zA-Z][a-zA-Z0-9]*)\b[^>]*>(.*?)<\/\1>

Captura nombre de etiqueta y contenido.

Para HTML complejo: usar DOMParser o cheerio.

12. Extract Numbers from String

-?\d+\.?\d*

Enteros y decimales. 42, -3.14, 0.5

13. Extract Hashtags

#[a-zA-Z0-9_]+

Coincide: #javascript, #dev_tools, #React18

Patrones de formato

14. Credit Card Number (Basic)

^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|3[47][0-9]{13}|6(?:011|5[0-9]{2})[0-9]{12})$

Coincide: Visa, Mastercard, Amex, Discover.

En producción: usar procesador de pagos.

15. Hex Color Code

^#([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{8})$

Coincide: #FFF, #FF5733, #FF573380

16. Semantic Version (SemVer)

^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$

Coincide: 1.0.0, 2.1.3-beta.1, 1.0.0+build.123

17. UUID (Any Version)

^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$

Coincide: f47ac10b-58cc-4372-a567-0e02b2c3d479

Procesamiento de texto

18. Trim Whitespace (Leading + Trailing)

^\s+|\s+$

Con replace para trim: text.replace(/^\\s+|\\s+$/g, '')

19. Multiple Spaces to Single Space

\s{2,}

Reemplazar por espacio único: text.replace(/\\s{2,}/g, ' ')

20. Markdown Bold Text

\*\*(.+?)\*\*

Captura texto entre **.

Usar estos patrones en código

// JavaScript
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
emailRegex.test('user@example.com'); // true

// Python
import re
pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
re.match(pattern, 'user@example.com')  # Match object

// Java
Pattern pattern = Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
pattern.matcher("user@example.com").matches(); // true

Prueba todos los patrones con Regex Tester →

Preguntas frecuentes

¿Estos patrones son compatibles con todos los lenguajes?

Sí, sintaxis regex estándar para JS, Python, Java, C#, Go, PHP, Ruby.

¿Usar regex para validar email en producción?

Para verificación básica sirve. Validación real solo con email de confirmación.

¿Diferencia entre cuantificadores greedy y lazy?

Greedy (*, +, ?): máxima coincidencia. Lazy (*?, +?, ??): mínima.

¿Fue útil?

Stay Updated

Get weekly dev tips and new tool announcements.

No spam. Unsubscribe anytime.

Partner Picks

Sponsor this article

Place your product next to this developer topic with tracked clicks.

Ask about article sponsorship

This site uses cookies for analytics and to display ads. By continuing to browse, you agree. Privacy Policy