Java RegEx Tester

Search...

⌘K

Java RegEx Tester

Search...

⌘K


Java RegEx Tester

Test and debug Java regular expressions instantly using the Qodex Java RegEx Tester, powered by the java.util.regex engine. Get real-time feedback with match highlights, capture groups, and syntax error detection—making it ideal for tasks like email validation, password matching, and pattern-based string parsing.


Whether you’re building login forms, input validators, or custom parsers, this tool streamlines your Java regex workflow. For comprehensive testing, pair it with the Email Generator, UUID Generator, or Password Generator to generate realistic test inputs.


Fine-tune specific fields with our Email Regex Java Validator or Phone Number Regex Java Validator to ensure your patterns are both precise and production-ready.

bomberman@qodex.ai
Possible security issues
This regex appears to be safe.
Explanation
  • [A-Z]: uppercase letters
  • [a-z]: lowercase letters
  • [0-9]: digits
  • \.: a literal dot
  • +: one or more of the preceding
  • *: zero or more of the preceding
  • ?: optional (zero or one)
  • ^: start of string
  • $: end of string
Match information
Match 1: "bomberman@qodex.ai" at index 0
Test your APIs today!

Write in plain English — Qodex turns it into secure, ready-to-run tests.

Regular Expression - Documentation

Java Regex Tester

The Java Regex Tester by Qodex helps developers write, test, and debug regular expressions in real time using Java’s java.util.regex package. It supports instant pattern testing for emails, passwords, phone numbers, dates, credit cards, and more.

You can view live match results, capture groups, and syntax feedback instantly—making it easy to refine your regex before using it in Java code.


How to Use:

  1. Enter your regular expression.

  2. Provide a test string.

  3. Instantly see highlighted matches and capture groups.


Need test inputs? Try our:


Java Regex Syntax Essentials

Metacharacters:

. Match any character (except newline)

^ Match start of string

$ Match end of string

| Logical OR operator (cat|dog)


Character Classes:

[abc] Match a, b, or c

[^abc] Match anything except a, b, or c

[a-zA-Z] Match any letter

\d Digit (0–9)

\D Non-digit

\w Word character

\W Non-word

\s Whitespace

\S Non-whitespace


Quantifiers

* Zero or more

+ One or more

? Zero or one

{n} Exactly n

{n,} At least n

{n,m} Between n and m


Groups & Captures

(abc) Capturing group

(?:abc) Non-capturing

(?i) Case-insensitive

\1\2 Backreferences

\b Word boundary

\B Non-word boundary


Assertions

(?=…) Positive lookahead

(?!…) Negative lookahead

(?<=…) Positive lookbehind

(?<!…) Negative lookbehind


Greedy vs Lazy

*? Lazy zero or more

+? Lazy one or more

?? Lazy zero or one


Unicode Matching

\p{L} Any letter

\p{N} Any number

\P{L} Any non-letter

Useful in multilingual or global apps.


Common Java Regex Examples

  1. Email Validation

Use with Email Regex Java Validator

Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
  1. Strong Password Check

Test using Password Regex Java Validator.

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

Covers (123) 456-7890, 1234567890, 123-456-7890

Pattern.compile("^(\\d{10}|\\(\\d{3}\\)[\\s.-]?\\d{3}[\\s.-]\\d{4}|\\d{3}[\\s.-]\\d{3}[\\s.-]\\d{4})$")
  1. Credit Card Pattern Matching

Use Credit Card Regex Java Validator + Luhn check for full validation.

Pattern.compile("^4[0-9]{12}(?:[0-9]{3})?$") // VISA
  1. Date Formats (ISO / US)

Regex checks format only—use Java date libraries for real validation.

"\\d{4}-\\d{2}-\\d{2}" // ISO  
"\\d{2}/\\d{2}/\\d{4}" // US MM/DD/YYYY
  1. Extract Filename from Windows Path

Pattern.compile("[^\\\\]+$");
  1. Validate IPv4

"^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$"
  1. Validate 24-hour Time Format (HH:MM)

"^([01]\\d|2[0-3]):[0-5]\\d$"
  1. Validate Hex Colors

Matches 3 or 6-digit codes, with or without #.

"^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$"
  1. SIN / SSN / ZIP Code Patterns

Check formatting only. Use:

  • ^\d{3}-\d{2}-\d{4}$ for SSN

  • ^\d{5}(-\d{4})?$ for ZIP +4


Important Tips

  • Always escape regex characters twice in Java (e.g., \\. to match a literal dot).

  • Prefer non-capturing groups unless you need references.

  • Avoid regex for parsing structured formats like JSON, HTML, or XML—use parsers.

  • Use Pattern.compile() once to reuse compiled patterns for better performance.

  • Use [\s\S] instead of . for multiline matching when DOTALL mode is needed.


Bonus: Example Code Snippet

import java.util.regex.*;

public class RegexExample {
    public static void main(String[] args) {
        String email = "test@example.com";
        Pattern pattern = Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
        Matcher matcher = pattern.matcher(email);
        System.out.println("Email valid: " + matcher.matches());
    }
}


Test More Regex Patterns in Java:


Want to test in a different language? Try our:

Frequently asked questions

How do I write a regex pattern in Java code?×
Use Pattern.compile() and Matcher from java.util.regex to define and apply regex.
How do I test if a string matches a pattern exactly?+
How can I make my regex case-insensitive in Java?+
How do I validate an email address using Java regex?+
What’s the difference between greedy and lazy quantifiers?+

Java RegEx Tester

Search...

⌘K

Java RegEx Tester

Search...

⌘K


Java RegEx Tester

Java RegEx Tester

Test and debug Java regular expressions instantly using the Qodex Java RegEx Tester, powered by the java.util.regex engine. Get real-time feedback with match highlights, capture groups, and syntax error detection—making it ideal for tasks like email validation, password matching, and pattern-based string parsing.


Whether you’re building login forms, input validators, or custom parsers, this tool streamlines your Java regex workflow. For comprehensive testing, pair it with the Email Generator, UUID Generator, or Password Generator to generate realistic test inputs.


Fine-tune specific fields with our Email Regex Java Validator or Phone Number Regex Java Validator to ensure your patterns are both precise and production-ready.

bomberman@qodex.ai
Possible security issues
This regex appears to be safe.
Explanation
  • [A-Z]: uppercase letters
  • [a-z]: lowercase letters
  • [0-9]: digits
  • \.: a literal dot
  • +: one or more of the preceding
  • *: zero or more of the preceding
  • ?: optional (zero or one)
  • ^: start of string
  • $: end of string
Match information
Match 1: "bomberman@qodex.ai" at index 0
Test your APIs today!

Write in plain English — Qodex turns it into secure, ready-to-run tests.

Regular Expression - Documentation

Java Regex Tester

The Java Regex Tester by Qodex helps developers write, test, and debug regular expressions in real time using Java’s java.util.regex package. It supports instant pattern testing for emails, passwords, phone numbers, dates, credit cards, and more.

You can view live match results, capture groups, and syntax feedback instantly—making it easy to refine your regex before using it in Java code.


How to Use:

  1. Enter your regular expression.

  2. Provide a test string.

  3. Instantly see highlighted matches and capture groups.


Need test inputs? Try our:


Java Regex Syntax Essentials

Metacharacters:

. Match any character (except newline)

^ Match start of string

$ Match end of string

| Logical OR operator (cat|dog)


Character Classes:

[abc] Match a, b, or c

[^abc] Match anything except a, b, or c

[a-zA-Z] Match any letter

\d Digit (0–9)

\D Non-digit

\w Word character

\W Non-word

\s Whitespace

\S Non-whitespace


Quantifiers

* Zero or more

+ One or more

? Zero or one

{n} Exactly n

{n,} At least n

{n,m} Between n and m


Groups & Captures

(abc) Capturing group

(?:abc) Non-capturing

(?i) Case-insensitive

\1\2 Backreferences

\b Word boundary

\B Non-word boundary


Assertions

(?=…) Positive lookahead

(?!…) Negative lookahead

(?<=…) Positive lookbehind

(?<!…) Negative lookbehind


Greedy vs Lazy

*? Lazy zero or more

+? Lazy one or more

?? Lazy zero or one


Unicode Matching

\p{L} Any letter

\p{N} Any number

\P{L} Any non-letter

Useful in multilingual or global apps.


Common Java Regex Examples

  1. Email Validation

Use with Email Regex Java Validator

Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
  1. Strong Password Check

Test using Password Regex Java Validator.

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

Covers (123) 456-7890, 1234567890, 123-456-7890

Pattern.compile("^(\\d{10}|\\(\\d{3}\\)[\\s.-]?\\d{3}[\\s.-]\\d{4}|\\d{3}[\\s.-]\\d{3}[\\s.-]\\d{4})$")
  1. Credit Card Pattern Matching

Use Credit Card Regex Java Validator + Luhn check for full validation.

Pattern.compile("^4[0-9]{12}(?:[0-9]{3})?$") // VISA
  1. Date Formats (ISO / US)

Regex checks format only—use Java date libraries for real validation.

"\\d{4}-\\d{2}-\\d{2}" // ISO  
"\\d{2}/\\d{2}/\\d{4}" // US MM/DD/YYYY
  1. Extract Filename from Windows Path

Pattern.compile("[^\\\\]+$");
  1. Validate IPv4

"^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$"
  1. Validate 24-hour Time Format (HH:MM)

"^([01]\\d|2[0-3]):[0-5]\\d$"
  1. Validate Hex Colors

Matches 3 or 6-digit codes, with or without #.

"^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$"
  1. SIN / SSN / ZIP Code Patterns

Check formatting only. Use:

  • ^\d{3}-\d{2}-\d{4}$ for SSN

  • ^\d{5}(-\d{4})?$ for ZIP +4


Important Tips

  • Always escape regex characters twice in Java (e.g., \\. to match a literal dot).

  • Prefer non-capturing groups unless you need references.

  • Avoid regex for parsing structured formats like JSON, HTML, or XML—use parsers.

  • Use Pattern.compile() once to reuse compiled patterns for better performance.

  • Use [\s\S] instead of . for multiline matching when DOTALL mode is needed.


Bonus: Example Code Snippet

import java.util.regex.*;

public class RegexExample {
    public static void main(String[] args) {
        String email = "test@example.com";
        Pattern pattern = Pattern.compile("^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$");
        Matcher matcher = pattern.matcher(email);
        System.out.println("Email valid: " + matcher.matches());
    }
}


Test More Regex Patterns in Java:


Want to test in a different language? Try our:

Frequently asked questions

How do I write a regex pattern in Java code?×
Use Pattern.compile() and Matcher from java.util.regex to define and apply regex.
How do I test if a string matches a pattern exactly?+
How can I make my regex case-insensitive in Java?+
How do I validate an email address using Java regex?+
What’s the difference between greedy and lazy quantifiers?+