Aggiunto in UtilityString determineDateFormat
This commit is contained in:
parent
76f9c7030b
commit
f212987547
@ -5,6 +5,8 @@ import android.text.Spanned;
|
||||
|
||||
import androidx.annotation.StringRes;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@ -13,6 +15,98 @@ import java.util.regex.Pattern;
|
||||
*/
|
||||
|
||||
public class UtilityString {
|
||||
private static final Map<String, String> DATE_FORMAT_REGEXPS = new HashMap<String, String>() {{
|
||||
|
||||
//-----------------------------------------------------------------------------------------
|
||||
//giorno-mese-giorno
|
||||
put("^\\d{1,2}/\\d{1,2}/\\d{4}$", "dd/MM/yyyy");
|
||||
put("^\\d{1,2}\\.\\d{1,2}\\.\\d{4}$", "dd.MM.yyyy");
|
||||
put("^\\d{1,2}-\\d{1,2}-\\d{4}$", "dd-MM-yyyy");
|
||||
|
||||
//anno-mese-giorno
|
||||
put("^\\d{4}/\\d{1,2}/\\d{1,2}$", "yyyy/MM/dd");
|
||||
put("^\\d{4}\\.\\d{1,2}\\.\\d{1,2}$", "yyyy.MM.dd");
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}$", "yyyy-MM-dd");
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------
|
||||
//senza spazi
|
||||
put("^\\d{8}$", "yyyyMMdd");
|
||||
put("^\\d{1,2}\\s[a-z]{3}\\s\\d{4}$", "dd MMM yyyy");
|
||||
put("^\\d{1,2}\\s[a-z]{4,}\\s\\d{4}$", "dd MMMM yyyy");
|
||||
|
||||
put("^\\d{12}$", "yyyyMMddHHmm");
|
||||
put("^\\d{8}\\s\\d{4}$", "yyyyMMdd HHmm");
|
||||
|
||||
put("^\\d{14}$", "yyyyMMddHHmmss");
|
||||
put("^\\d{8}\\s\\d{6}$", "yyyyMMdd HHmmss");
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------
|
||||
//giorno-mese-anno hhmm
|
||||
put("^\\d{1,2}/\\d{1,2}/\\d{4}\\s\\d{1,2}\\.\\d{2}$", "dd/MM/yyyy HH.mm");
|
||||
put("^\\d{1,2}/\\d{1,2}/\\d{4}\\s\\d{1,2}:\\d{2}$", "dd/MM/yyyy HH:mm");
|
||||
|
||||
put("^\\d{1,2}\\.\\d{1,2}\\.\\d{4}\\s\\d{1,2}\\.\\d{2}$", "dd.MM.yyyy HH.mm");
|
||||
put("^\\d{1,2}\\.\\d{1,2}\\.\\d{4}\\s\\d{1,2}:\\d{2}$", "dd.MM.yyyy HH:mm");
|
||||
|
||||
put("^\\d{1,2}-\\d{1,2}-\\d{4}\\s\\d{1,2}\\.\\d{2}$", "dd-MM-yyyy HH.mm");
|
||||
put("^\\d{1,2}-\\d{1,2}-\\d{4}\\s\\d{1,2}:\\d{2}$", "dd-MM-yyyy HH:mm");
|
||||
|
||||
//anno-mese-giorno hhmm
|
||||
put("^\\d{4}/\\d{1,2}/\\d{1,2}\\s\\d{1,2}\\.\\d{2}$", "yyyy/MM/dd HH.mm");
|
||||
put("^\\d{4}/\\d{1,2}/\\d{1,2}\\s\\d{1,2}:\\d{2}$", "yyyy/MM/dd HH:mm");
|
||||
|
||||
put("^\\d{4}\\.\\d{1,2}\\.\\d{1,2}\\s\\d{1,2}\\.\\d{2}$", "yyyy.MM.dd HH.mm");
|
||||
put("^\\d{4}\\.\\d{1,2}\\.\\d{1,2}\\s\\d{1,2}:\\d{2}$", "yyyy.MM.dd HH:mm");
|
||||
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}\\.\\d{2}$", "yyyy-MM-dd HH.mm");
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{2}$", "yyyy-MM-dd HH:mm");
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------------------
|
||||
//giorno-mese-anno hhmmss
|
||||
put("^\\d{1,2}/\\d{1,2}/\\d{4}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "dd/MM/yyyy HH.mm.ss");
|
||||
put("^\\d{1,2}/\\d{1,2}/\\d{4}\\s\\d{1,2}:\\d{2}:\\d{2}$", "dd/MM/yyyy HH:mm:ss");
|
||||
|
||||
put("^\\d{1,2}\\.\\d{1,2}\\.\\d{4}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "dd.MM.yyyy HH.mm.ss");
|
||||
put("^\\d{1,2}\\.\\d{1,2}\\.\\d{4}\\s\\d{1,2}:\\d{2}:\\d{2}$", "dd.MM.yyyy HH:mm:ss");
|
||||
|
||||
put("^\\d{1,2}-\\d{1,2}-\\d{4}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "dd-MM-yyyy HH.mm.ss");
|
||||
put("^\\d{1,2}-\\d{1,2}-\\d{4}\\s\\d{1,2}:\\d{2}:\\d{2}$", "dd-MM-yyyy HH:mm:ss");
|
||||
|
||||
//anno-mese-giorno hhmmss
|
||||
put("^\\d{4}/\\d{1,2}/\\d{1,2}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "yyyy/MM/dd HH.mm.ss");
|
||||
put("^\\d{4}/\\d{1,2}/\\d{1,2}\\s\\d{1,2}:\\d{2}:\\d{2}$", "yyyy/MM/dd HH:mm:ss");
|
||||
|
||||
put("^\\d{4}\\.\\d{1,2}\\.\\d{1,2}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "yyyy.MM.dd HH.mm.ss");
|
||||
put("^\\d{4}\\.\\d{1,2}\\.\\d{1,2}\\s\\d{1,2}:\\d{2}:\\d{2}$", "yyyy.MM.dd HH:mm:ss");
|
||||
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}\\.\\d{2}\\.\\d{2}$", "yyyy-MM-dd HH.mm.ss");
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{2}:\\d{2}$", "yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
//anno-mese-giorno hhmmssS
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{2}:\\d{2}.\\d{1,3}$", "yyyy-MM-dd HH:mm:ss.SSS");
|
||||
|
||||
//-----------------------------------------------------------------------------------------
|
||||
//altri formati
|
||||
put("^\\d{1,2}\\s[a-z]{3}\\s\\d{4}\\s\\d{1,2}:\\d{2}:\\d{2}$", "dd MMM yyyy HH:mm:ss");
|
||||
put("^\\d{1,2}\\s[a-z]{4,}\\s\\d{4}\\s\\d{1,2}:\\d{2}:\\d{2}$", "dd MMMM yyyy HH:mm:ss");
|
||||
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}[T]\\d{1,2}:\\d{2}:\\d{2}$", "yyyy-MM-ddTHH:mm:ss");
|
||||
|
||||
put("^\\d{4}-\\d{1,2}-\\d{1,2}t\\d{1,2}:\\d{2}:\\d{2}.\\d{1,3}z$", "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
|
||||
put("^(\\d{4})-(\\d{2})-(\\d{2})t(\\d{2}):(\\d{2}):(\\d{2})((\\+|-)(\\d{2}):(\\d{2}))$", "yyyy-MM-dd'T'HH:mm:ss");
|
||||
}};
|
||||
|
||||
public static String determineDateFormat(String dateString) {
|
||||
for (String regexp : DATE_FORMAT_REGEXPS.keySet()) {
|
||||
if (dateString.toLowerCase().matches(regexp)) {
|
||||
return DATE_FORMAT_REGEXPS.get(regexp);
|
||||
}
|
||||
}
|
||||
return null; // Unknown format.
|
||||
}
|
||||
|
||||
public static boolean isNullOrEmpty(String stringToCheck){
|
||||
return stringToCheck == null || stringToCheck.trim().isEmpty();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user