Regular Expressions 101

Save & Share

Flavor

  • PCRE2 (PHP >=7.3)
  • PCRE (PHP <7.3)
  • ECMAScript (JavaScript)
  • Python
  • Golang
  • Java 8

Function

  • Match
  • Substitution
  • List
  • Unit Tests
/
(?(DEFINE) (?P<ver>\d+(?:\.\d+)*(?![.\d])) (?P<agent>Mozilla/(?&ver)) (?P<os>(?&os_windows)|(?&os_linux)|(?&os_macintosh)|(?&os_ios)) (?P<os_windows>Windows[ ]\w+[ ](?&ver)) (?P<os_linux>Linux(?:[ ](?:i686|x86_64))?) (?P<os_macintosh>Macintosh) (?P<os_ios>(?:CPU[ ])?iPhone[ ]OS|CPU[ ]OS.*?like[ ]Mac[ ]OS[ ]X) (?P<device>(?&device_ios)|(?&device_firefox)|(?&device_android)) (?P<device_ios>iPhone|iPad) (?P<device_firefox>Mobile) (?P<device_android>Android(?:[ ](?&ver))?) (?P<browser> (?: (?&browser_ie) | (?&browser_safari) | (?&browser_chrome) | (?&browser_chromium) | (?&browser_firefox) | (?&browser_version) # | (?&browser_nexus) | (?&browser_mobile) | (?&browser_gsa) | (?&browser_quicklook) | (?&browser_opera) ) [ /] (?: [A-Z\d]+\b(?!\.) | (?&ver) ) ) (?P<browser_safari>(?:Mobile[ ])?Safari) (?P<browser_chrome>Chrome) (?P<browser_chromium>\b\w+\b[ ]Chromium) (?P<browser_firefox>Firefox) (?P<browser_ie>MSIE) (?P<browser_version>Version) (?P<browser_nexus>Nexus[ ]\d+[ ]Build) (?P<browser_mobile>Mobile) (?P<browser_gsa>GSA) (?P<browser_quicklook>QuickLook) (?P<browser_opera>OPR) ) ^ (?:(?=.*?(?P<Agent>(?&agent)))) (?:(?=.*?(?P<OS>(?&os)))) (?:(?=.*?(?P<Device>(?&device))))? (?:(?=.*?(?P<Browser>(?&browser)(?:[ ](?&browser))*)))?
/
gmx
All the errors detected are listed below, from left to right, as they appear in the pattern.
/ An unescaped delimiter must be escaped with a backslash (\)
/ An unescaped delimiter must be escaped with a backslash (\)
Your regular expression does not match the subject string.Try launching the debugger to find out why.

Regular Expression
No Match

/
/
gmx

Test String

Substitution

Processing...