code: public static DateInterval parse(
          String text,
          ChronoParser<PlainDate> parser,
          String intervalPattern
      ) throws ParseException {
  
          return IntervalParser.parsePattern(text, DateIntervalFactory.INSTANCE, parser, intervalPattern);
  
      }
docs: /*[deutsch]
  <p>Interpretiert den angegebenen Text als Intervall mit Hilfe des angegebenen
  Intervallmusters. </p>
  
  <p>Beginnend mit der Version v4.18 ist es auch m&ouml;glich, eine Oder-Logik im Muster zu verwenden.
  Beispiel: </p>
  
  <pre>
  String multiPattern = &quot;{0} - {1}|since {0}|until {1}&quot;;
  ChronoParser&lt;PlainDate&gt; parser =
  ChronoFormatter.ofDatePattern(&quot;MMMM d / uuuu&quot;, PatternType.CLDR, Locale.US);
  
  DateInterval between =
  DateInterval.parse(&quot;July 20 / 2015 - December 31 / 2015&quot;, parser, multiPattern);
  System.out.println(between); // [2015-07-20/2015-12-31]
  
  DateInterval since =
  DateInterval.parse(&quot;since July 20 / 2015&quot;, parser, multiPattern);
  System.out.println(since); // [2015-07-20/+&#x221E;)
  
  DateInterval until =
  DateInterval.parse(&quot;until December 31 / 2015&quot;, parser, multiPattern);
  System.out.println(until); // (-&#x221E;/2015-12-31]
  </pre>
  
  @param   text                text to be parsed
  @param   parser              format object for parsing start and end components
  @param   intervalPattern     interval pattern containing placeholders {0} and {1} (for start and end)
  @return  parsed interval
  @throws  IndexOutOfBoundsException if given text is empty
  @throws  ParseException if the text is not parseable
  @since   3.9/4.6