title: How can I recursively match a pattern using Regular Expressions?
body: <p>The string can be like one of the following:</p>
  
  <pre><code>a(b,c)
  a(a(b,c),d)
  a(a(a(a(a(b,c),d),a(e,f)),g),h)
  etc
  </code></pre>
  
  <p>I want to match an unlimited number of "a(x,y)". How can I do that using Regex? Here's what I have:</p>
  
  <pre><code>\\w\\(((?:\\([a-zA-Z0-9]+\\))|(?:[a-zA-Z0-9]+)),((?:\\([a-zA-Z0-9]+\\))|(?:[a-zA-Z0-9]+))\\)
  </code></pre>
  
  <p>It only matches up two recursions of "a(x,y)".</p>