Please enable JavaScript to use this web application.
Regular
Expressions
101
Social
Donate
Info
Regex Editor
Community Patterns
Account
Regex Quiz
Settings
Order By
Most Recent
Most upvotes
Most downvotes
Highest Score
Lowest Score
Filter by Flavor
PCRE2 (PHP >=7.3)
PCRE (PHP <7.3)
ECMAScript (JavaScript)
Python
Golang
Java 8
.NET 7.0 (C#)
Rust
Sponsors
There are currently no sponsors.
Become a sponsor today!
Community Patterns
Search among 15,000 community submitted regex patterns...
There does not seem to be anything here
Community Library Entry
1
Regular Expression
ECMAScript (JavaScript)
/
e
[
yw
]
[
A
-
Za
-
z0
-
9-_
]
+
\.
(?:
e
[
yw
]
[
A
-
Za
-
z0
-
9-_
]
+
)?
\.
[
A
-
Za
-
z0
-
9-_
]
{2,}
(?:
(?:
\.
[
A
-
Za
-
z0
-
9-_
]
{2,}
){2}
)?
/
g
Open regex in editor
Description
handles both JWS (3 segments) and JWE (5 segments)
remove the ending
(?:(?:...
to handle JWS only
segments 1+2 are expected tp start with
e[yw]
, an encoded start of JSON object
{"
or
{\n
remove/extend it to match used token structure
or make it even more restrictive
(ey[IJ]|ewo)
to match encoded
{"\w
or
{\n"
payload (2nd segment) may be empty
both header (1st segment) and payload are expected to start with
eyJ
, a base64 encoded start of JSON object
{"
accepts only proper Base64url encoding (RFC 4648) without Base64 padding
=
test it at
https://regex101.com/r/V99DS0
Submitted by
iki
-
7 months ago
(Last modified 7 months ago)