From 663775fa03698e30e0d03308e40c85a03b01686f Mon Sep 17 00:00:00 2001 From: Ninglin Du Date: Fri, 12 Jul 2024 16:17:28 +0800 Subject: [PATCH] =?UTF-8?q?[DUCK]=20=E5=A2=9E=E5=8A=A0=20=E6=AC=A1?= =?UTF-8?q?=E6=97=A5=20=3D=20=E6=98=8E=E5=A4=A9=20(#225)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 增加 次日 = 明天 --- .../xiaomi/duckling/dimension/time/date/Rules.scala | 11 ++++++++++- .../com/xiaomi/duckling/dimension/time/Examples.scala | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/duckling-fork-chinese/core/src/main/scala/com/xiaomi/duckling/dimension/time/date/Rules.scala b/duckling-fork-chinese/core/src/main/scala/com/xiaomi/duckling/dimension/time/date/Rules.scala index dec0e0a..b29ed1e 100644 --- a/duckling-fork-chinese/core/src/main/scala/com/xiaomi/duckling/dimension/time/date/Rules.scala +++ b/duckling-fork-chinese/core/src/main/scala/com/xiaomi/duckling/dimension/time/date/Rules.scala @@ -28,7 +28,7 @@ import com.xiaomi.duckling.dimension.matcher.{GroupMatch, RegexMatch} import com.xiaomi.duckling.dimension.matcher.Prods.{regexMatch, singleRegexMatch} import com.xiaomi.duckling.dimension.numeral.Predicates.{getIntValue, isIntegerBetween} import com.xiaomi.duckling.dimension.numeral.seq.{DigitSequence, DigitSequenceData} -import com.xiaomi.duckling.dimension.time.Prods.intersectDOM +import com.xiaomi.duckling.dimension.time.Prods.{intersectDOM, tt} import com.xiaomi.duckling.dimension.time.duration.{isADecade, Duration, DurationData} import com.xiaomi.duckling.dimension.time.enums.Grain._ import com.xiaomi.duckling.dimension.time.enums.Hint.{NoHint, RecentNominal, YearMonth} @@ -229,6 +229,15 @@ trait Rules extends DimRules { } ) + val tomorrow = Rule( + name = "次日", + pattern = List("次日".regex), + prod = tokens { + case Token(RegexMatch, GroupMatch(s :: _)) :: _ => + tt(cycleNthThis(1, Day, Day, Year)) + } + ) + val ruleDecade = Rule( name = "date: tens of decade", pattern = List(isADecade.predicate, "年代".regex), diff --git a/duckling-fork-chinese/learning/src/main/scala/com/xiaomi/duckling/dimension/time/Examples.scala b/duckling-fork-chinese/learning/src/main/scala/com/xiaomi/duckling/dimension/time/Examples.scala index ff3c855..7b4b854 100644 --- a/duckling-fork-chinese/learning/src/main/scala/com/xiaomi/duckling/dimension/time/Examples.scala +++ b/duckling-fork-chinese/learning/src/main/scala/com/xiaomi/duckling/dimension/time/Examples.scala @@ -37,7 +37,7 @@ object Examples extends DimExamples { // 有一部分在Date中已经定义了 (ymd(2013, 2, 12), List("今天", "今日", "2.12", "02.12")), (ymd(2013, 2, 11), List("昨天", "昨日")), - (ymd(2013, 2, 13), List("明天", "明日")), + (ymd(2013, 2, 13), List("明天", "明日", "次日")), (ymd(2013, 2, 14), List("后天", "后日")), (ymd(2013, 2, 10), List("前天", "前日")), (ymd(2012, 2, 12), List("去年的今天")),