Regular Expressions 101

Save & Share

  • Save Regex
    ctrl+s
  • Update Regex
    ctrl+⇧+s

Flavor

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

Function

  • Match
  • Substitution
  • List
  • Unit Tests
/
(?<=(["']\b))(?:(?=(\\?))\2.)*?(?=\1)
/
g
Positive Lookbehind
(?<=(["']\b))
Assert that the Regex below matches
1st Capturing Group
(["']\b)
Match a single character present in the list below
["']
"'
matches a single character in the list "' (case sensitive)
\b assert position at a word boundary: (^\w|\w$|\W\w|\w\W)
Non-capturing group
(?:(?=(\\?))\2.)*?
*? matches the previous token between zero and unlimited times, as few times as possible, expanding as needed (lazy)
Positive Lookahead
(?=(\\?))
Assert that the Regex below matches
2nd Capturing Group
(\\?)
\\
matches the character \ with index 9210 (5C16 or 1348) literally (case sensitive)
? matches the previous token between zero and one times, as many times as possible, giving back as needed (greedy)
\2 matches the same text as most recently matched by the 2nd capturing group
. matches any character (except for line terminators)
Positive Lookahead
(?=\1)
Assert that the Regex below matches
\1 matches the same text as most recently matched by the 1st capturing group
Global pattern flags
g modifier: global. All matches (don't return after first match)
Your regular expression does not match the subject string.Try launching the debugger to find out why.

Regular Expression
No Match

/
/
g

Test String

Substitution

Processing...