DD
DevDash

Regex for JWT Token (Strict)

Regex Pattern

^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$

Strict JWT starting with eyJ (base64 encoded JSON header and payload)

Quick Answer

The regex pattern for jwt token (strict) is `^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$`. Strict JWT starting with eyJ (base64 encoded JSON header and payload). This works in JavaScript, Python, Ruby, PHP, Java, and most regex engines that support PCRE syntax.

Test Examples

InputResult
eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV✓ Matches
notajwt✗ No match
aaa.bbb.ccc✗ No match
eyJ.eyJ✗ No match

Code Examples

javascript

const regex = /^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$/;
const isValid = regex.test(value);

python

import re
pattern = r'^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$'
if re.match(pattern, value):
    print("valid")

ruby

pattern = /^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$/
if value =~ pattern
  puts "valid"
end

php

if (preg_match('/^eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$/', $value)) {
    echo "valid";
}

java

String pattern = "^eyJ[A-Za-z0-9-_]+\\.eyJ[A-Za-z0-9-_]+\\.[A-Za-z0-9-_]+$";
boolean isValid = value.matches(pattern);

Frequently Asked Questions

Related Regex Patterns

Want API access + no ads? Pro coming soon.