diff --git a/src/NodaTimeSplitter.php b/src/NodaTimeSplitter.php index f5b1ee1..333fdb8 100644 --- a/src/NodaTimeSplitter.php +++ b/src/NodaTimeSplitter.php @@ -896,7 +896,15 @@ final class NodaTimeSplitter { $bcBceIndicator = '+'; // 17. Jahrhundert - if (\preg_match("/^[0-9][0-9]\.\ (Jh\.|Jahrhundert|sz|század)$/", $datum)) { + if (\preg_match("/^[0-9]{2}\.\ (Jh\.|Jahrhundert|sz|század)$/", $datum)) { + if ($centuryNo = \intval(\substr($datum, 0, 2))) { + $centuryNo--; + return [(string)$centuryNo . "01", \strval($centuryNo + 1) . "00", "00", "00", $bcBceIndicator, ""]; + } + } + + // 17th century + if (\preg_match("/^[0-9]{2}th century$/", $datum)) { if ($centuryNo = \intval(\substr($datum, 0, 2))) { $centuryNo--; return [(string)$centuryNo . "01", \strval($centuryNo + 1) . "00", "00", "00", $bcBceIndicator, ""]; @@ -962,7 +970,7 @@ final class NodaTimeSplitter { return [$start, $ende, "00", "00", $bcBceIndicator, ""]; } - if (\preg_match("/^[0-9]{3}0(er|er\ Jahre|\-es\ évek|\-as\ \évek)$/", $datum)) { + if (\preg_match("/^[0-9]{3}0(s|er|er\ Jahre|\-es\ évek|\-as\ \évek)$/", $datum)) { $start = \substr($datum, 0, 4); $ende = (string)(\intval($start) + 9); return [$start, $ende, "00", "00", $bcBceIndicator, ""];