code: public static String find(CharSequence self, CharSequence regex, @ClosureParams(value=SimpleType.class, options="java.lang.String[]") Closure closure) {
          return find(self.toString(), Pattern.compile(regex.toString()), closure);
      }
docs: Returns the result of calling a closure with the first occurrence of a regular expression found within a CharSequence.
  If the regex doesn't match, the closure will not be called and find will return null.
  
  @param self    a CharSequence
  @param regex   the capturing regex CharSequence
  @param closure the closure that will be passed the full match, plus each of the capturing groups (if any)
  @return a String containing the result of calling the closure (calling toString() if needed), or null if the regex pattern doesn't match
  @see #find(String, java.util.regex.Pattern, groovy.lang.Closure)
  @since 1.8.2