Regular Expressions 101

Sponsors

Library entries

4
pcre2

CloudFlare

Cloud Flare
Submitted by anonymous - a year ago
3
pcre2

Email

email format control
Submitted by ahmetbarut - a year ago
3
pcre2

example

example
Submitted by anonymous - a year ago
2
pcre2

Dutch zipcodes

no description available
Submitted by anonymous - 2 years ago
2
pcre2

web log entry

no description available
Submitted by PepeRG - 2 years ago
2
pcre2

Url

Port https://regex101.com/library/cX0pJ8 to PCRE2 (PHP >= 7.3)
Submitted by semivori - 2 years ago
2
pcre2

object

Json Object
Submitted by anonymous - a year ago
2
pcre2

US phone number

US phone number, try to catch as many as possible
Submitted by anonymous - a year ago

match valid JSON

Vote

26

Regular Expression
pcre

/
(?(DEFINE) # Note that everything is atomic, JSON does not need backtracking if it's valid # and this prevents catastrophic backtracking (?<json>(?>\s*(?&object)\s*|\s*(?&array)\s*)) (?<object>(?>\{\s*(?>(?&pair)(?>\s*,\s*(?&pair))*)?\s*\})) (?<pair>(?>(?&STRING)\s*:\s*(?&value))) (?<array>(?>\[\s*(?>(?&value)(?>\s*,\s*(?&value))*)?\s*\])) (?<value>(?>true|false|null|(?&STRING)|(?&NUMBER)|(?&object)|(?&array))) (?<STRING>(?>"(?>\\(?>["\\\/bfnrt]|u[a-fA-F0-9]{4})|[^"\\\0-\x1F\x7F]+)*")) (?<NUMBER>(?>-?(?>0|[1-9][0-9]*)(?>\.[0-9]+)?(?>[eE][+-]?[0-9]+)?)) ) \A(?&json)\z
/
x

Description

Loading markdown...
Submitted by Mateon1 - 8 years ago