I'm working on an Java assignment to create a program that accepts a date in multiple formats:

Day must be `DD`, Month can be `MM` (in digits) or `MMM` (first 3 letters), and Year can be `YY` or `YYYY`. Delimiters may be slash, dot or dash.

Examples of input to be accepted: 

* `1/May/2001`
* `23.8.9`
* `7-01-01`

My problem is the user input is accepted by a String. So I need to separate the information between the delimiters.

What should I use to do this? It is recommended I use the `java.util.regex` package?