title: The meaning of \\1* operator in Java regexes
body: <p>I am learning about Java regexes, and I noticed the following operator:</p>
  
  <pre><code>\\*1
  </code></pre>
  
  <p>I'm having hard time figuring out what it means (searching in the web didn't help).
  For example, what is the difference between these two options:</p>
  
  <pre><code>    Pattern p1 = Pattern.compile("(a)\\1*"); // option1
      Pattern p2 = Pattern.compile("(a)"); // option2
  
      Matcher m1 = p1.matcher("a");
      Matcher m2 = p2.matcher("a");
  
      System.out.println(m1.group(0));
      System.out.println(m2.group(0));
  </code></pre>
  
  <p>Result:</p>
  
  <pre><code>a
  a
  </code></pre>
  
  <p>Thanks!</p>