Regular Expressions 101

Sponsors

Library entries

-2
pcre

ex_3_b

no description available
Submitted by anonymous - 7 years ago
-2
pcre

12 Hour Time Pattern

no description available
Submitted by anonymous - 7 years ago
-2
pcre

xml_kv_extraction

Basic XML key-value extraction
Submitted by Keith Muggleton - 7 years ago
-2
pcre

march html tag

no description available
Submitted by anonymous - 7 years ago
-2
pcre

Camelize JSON

no description available
Submitted by anonymous - 7 years ago
-2
pcre

Substitute text between brackets

no description available
Submitted by anonymous - 7 years ago
-2
pcre

French phone attempt

no description available
Submitted by anonymous - 7 years ago
-2
pcre

remove eval(base64_decode( ));

\seval\(base64_decode\(?\)\);
Submitted by manish kumar - 7 years 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