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
"
(.+) \[INFO.+\nStopWatch(?:.+?\n)+?(.+% .+ Mercado)
"
1st Capturing Group
(.+)
.
matches any character (except for line terminators)
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
matches the character with index 3210 (2016 or 408) literally (case sensitive)
\[ matches the character [ with index 9110 (5B16 or 1338) literally (case sensitive)
INFO
matches the characters INFO literally (case sensitive)
.
matches any character (except for line terminators)
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
\n matches a line-feed (newline) character (ASCII 10)
StopWatch
matches the characters StopWatch literally (case sensitive)
Non-capturing group
(?:.+?\n)+?
+? matches the previous token between one and unlimited times, as few times as possible, expanding as needed (lazy)
.
matches any character (except for line terminators)
+? matches the previous token between one and unlimited times, as few times as possible, expanding as needed (lazy)
\n matches a line-feed (newline) character (ASCII 10)
2nd Capturing Group
(.+% .+ Mercado)
.
matches any character (except for line terminators)
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
%
matches the characters % literally (case sensitive)
.
matches any character (except for line terminators)
+ matches the previous token between one and unlimited times, as many times as possible, giving back as needed (greedy)
Mercado
matches the characters Mercado literally (case sensitive)
Your regular expression does not match the subject string.

Regular Expression
No Match

r"
"

Test String