Regular Expressions 101

Sponsors

Library entries

0
java

Other segment

Other segments
Submitted by Lufram - a day ago
0
java

Take segments to string

Take segments to string
Submitted by Lufram - a day ago
0
java

Kyivstar phone number

Kyivstar phone number
Submitted by milka_vlad - 6 days ago
0
java

tas-branch-validation

tas-branch-validation
Submitted by doron-hafner - 9 days ago
0
javascript

Match HTML tag with specific attributes

1
Submitted by anonymous - 10 days ago
0
javascript

Company name

Company name
Submitted by anonymous - 12 days ago
0
java

ip address

ip address regex
Submitted by shyam - 12 days 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