Class RegexDateParser

java.lang.Object
org.miaixz.bus.core.center.date.format.parser.RegexDateParser
All Implemented Interfaces:
Serializable, DateParser

public class RegexDateParser extends Object implements DateParser, Serializable
使用正则列表方式的日期解析器 通过定义若干的日期正则,遍历匹配到给定正则后,按照正则方式解析为日期
Since:
Java 17+
Author:
Kimi Liu
See Also:
  • Constructor Details

    • RegexDateParser

      public RegexDateParser(List<Pattern> patterns)
      构造
      Parameters:
      patterns - 正则列表
  • Method Details

    • of

      public static RegexDateParser of(String... regexes)
      根据给定的正则列表
      Parameters:
      regexes - 正则列表,默认忽略大小写
      Returns:
      this
    • of

      public static RegexDateParser of(Pattern... patterns)
      根据给定的正则列表
      Parameters:
      patterns - 正则列表
      Returns:
      this
    • setPreferMonthFirst

      public void setPreferMonthFirst(boolean preferMonthFirst)
      当用户传入的月和日无法判定默认位置时,设置默认的日期格式为dd/mm还是mm/dd
      Parameters:
      preferMonthFirst - true默认为mm/dd,否则dd/mm
    • addRegex

      public RegexDateParser addRegex(String regex)
      新增自定义日期正则
      Parameters:
      regex - 日期正则
      Returns:
      this
    • addPattern

      public RegexDateParser addPattern(Pattern pattern)
      新增自定义日期正则
      Parameters:
      pattern - 日期正则
      Returns:
      this
    • parse

      public Date parse(CharSequence source) throws DateException
      Description copied from interface: DateParser
      将日期字符串解析并转换为 Date 对象
      Specified by:
      parse in interface DateParser
      Parameters:
      source - 被解析的日期字符串
      Returns:
      Date对象
      Throws:
      DateException - 转换异常,被转换的字符串格式错误。