Ho bisogno di analizzare una stringa in un LocalDate
. La stringa appare come 31.* 03 2016
in termini di espressioni regolari (ad esempio, .*
significa che potrebbero essere presenti 0 o più caratteri sconosciuti dopo il numero del giorno).Wildcard in DateTimeFormatter
ingresso Esempio/uscita: 31xy 03 2016
==>2016-03-31
speravo di trovare una sintassi jolly nella documentazione DateTimeFormatter per consentire a un modello come ad esempio:
LocalDate.parse("31xy 03 2016", DateTimeFormatter.ofPattern("dd[.*] MM yyyy"));
ma non ho trovato nulla .
C'è un modo semplice per esprimere caratteri sconosciuti opzionali con un DateTimeFormatter
?
ps: Posso ovviamente modificare la stringa prima di analizzarla ma non è quello che sto chiedendo.
C'è un motivo per cui non si desidera sottoporre a pre-elaborazione la stringa prima di passarla a 'DateTimeFormatter'? Qualcos'altro che puoi fare è creare la tua classe che estenda 'DateTimeFormatter' e sovrascriva il metodo' ofPattern() ', ma questo non sembra consigliabile. –
Preferirei una soluzione elegante con DateTimeFormatter - se non esiste andrò per il piano B. DateTimeFormatter è finale quindi non è estendibile. – assylias
Ah non ne ero consapevole, buono a sapersi! –