Package ai.platon.pulsar.common
Class DateTimeDetector
-
- All Implemented Interfaces:
public class DateTimeDetectorDetect a date time in a text. TODO: see org.apache.commons.lang3.time.DateUtils
TODO: there are bugs
-
-
Field Summary
Fields Modifier and Type Field Description public final static intMIN_DATE_TIME_STR_LENGTHpublic final static intMIN_YEAR_MONTH_STR_LENGTHpublic final static intMIN_DATE_STR_LENGTHpublic final static intMAX_META_STR_LENGTHpublic final static intMAX_DATE_TIME_STR_LENGTHpublic final static intMAX_TITLE_LENGTHpublic final static Array<String>BAD_DATE_TIME_STRING_CONTAINSpublic final static intOLD_DATE_DAYSpublic final static LocalDateCURRENT_DATEpublic final static longCURRENT_DATE_EPOCH_DAYSpublic final static intCURRENT_YEARpublic final static StringCURRENT_YEAR_STRpublic final static intCURRENT_MONTHpublic final static intYEAR_LOWER_BOUNDpublic final static List<String>VALID_WORK_YEARSpublic final static List<String>VALID_WORK_YEARS_SHORTpublic final static Array<String>VALID_WORK_YEARS_ARRAYpublic final static Array<String>VALID_WORK_YEARS_SHORT_ARRAYpublic static Set<String>OLD_YEARSpublic static Set<String>OLD_MONTHpublic static PatternOLD_MONTH_URL_DATE_PATTERNpublic static Array<String>COMMON_DATE_FORMATSpublic static Array<String>COMMON_DATE_TIME_FORMATSpublic ZoneIdzoneId
-
Constructor Summary
Constructors Constructor Description DateTimeDetector()DateTimeDetector(ZoneId zoneId)DateTimeDetector(Array<String> dateFormats, Array<String> dateTimeFormats)DateTimeDetector(Array<String> dateFormats, Array<String> dateTimeFormats, ZoneId zoneId)
-
Method Summary
Modifier and Type Method Description ZoneIdgetZoneId()voidsetZoneId(ZoneId zoneId)StringdetectPossibleDateTimeString(String text)Detect a possible date time string in a text OffsetDateTimedetectDateTimeLeniently(String text)Try to detect a best date time OffsetDateTimedetectDateTime(String text)YearMonthdetectYearMonth(String text)YearMonthtryParseYearMonthStrictly(String possibleYearMonth)OffsetDateTimedetectDate(String text)Detect a date OffsetDateTimetryParseDateTimeStrictly(String possibleDate)Try parse a date time OffsetDateTimeparseDateStrictly(String dateStr)OffsetDateTimeparseDateTimeStrictly(String dateStr)OffsetDateTimeparseDateStrictly(String dateStr, Array<String> formats)InstantparseDateTimeStrictly(String dateStr, Instant defaultValue)booleancontainsOldDate(String text, int days, ZoneId zoneId)For urls who contains date information, for example http://bond.hexun.com/2011-01-07/126641872. -
-
Constructor Detail
-
DateTimeDetector
DateTimeDetector()
-
DateTimeDetector
DateTimeDetector(ZoneId zoneId)
-
-
Method Detail
-
detectPossibleDateTimeString
String detectPossibleDateTimeString(String text)
Detect a possible date time string in a text
-
detectDateTimeLeniently
OffsetDateTime detectDateTimeLeniently(String text)
Try to detect a best date time
-
detectDateTime
OffsetDateTime detectDateTime(String text)
-
detectYearMonth
YearMonth detectYearMonth(String text)
-
tryParseYearMonthStrictly
YearMonth tryParseYearMonthStrictly(String possibleYearMonth)
-
detectDate
OffsetDateTime detectDate(String text)
Detect a date
-
tryParseDateTimeStrictly
OffsetDateTime tryParseDateTimeStrictly(String possibleDate)
Try parse a date time
-
parseDateStrictly
OffsetDateTime parseDateStrictly(String dateStr)
-
parseDateTimeStrictly
OffsetDateTime parseDateTimeStrictly(String dateStr)
-
parseDateStrictly
OffsetDateTime parseDateStrictly(String dateStr, Array<String> formats)
-
parseDateTimeStrictly
Instant parseDateTimeStrictly(String dateStr, Instant defaultValue)
-
containsOldDate
boolean containsOldDate(String text, int days, ZoneId zoneId)
For urls who contains date information, for example http://bond.hexun.com/2011-01-07/126641872.html
- Parameters:
text- a java.lang.String object.days- a int.zoneId- a java.time.ZoneId object.- Returns:
a boolean.
-
-
-
-