Compare commits
6 Commits
59453a2196
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
59580720fe
|
|||
| 781180209f | |||
|
bca32c33c7
|
|||
|
5ad7c5a29d
|
|||
| fa79602300 | |||
|
adddbdd0f6
|
@@ -15,8 +15,10 @@ final class NodaBlacklistedTerms {
|
||||
*/
|
||||
public const TAG_BLACKLIST = [
|
||||
'de' => [
|
||||
'Allgemein',
|
||||
'andere',
|
||||
'anderes',
|
||||
'In general',
|
||||
'sonst',
|
||||
'sonst.',
|
||||
'sonstige',
|
||||
|
||||
@@ -917,6 +917,23 @@ final class NodaTimeSplitter {
|
||||
$output->counting_time_indicator, NodaTimeBeforeAfterIndicator::until, '?', $output->end_date);
|
||||
}
|
||||
}
|
||||
if (str_ends_with($datum, "terminus ante quem")) {
|
||||
if (($spacePos = \strrpos($datum, " ", -15)) === false) {
|
||||
return false;
|
||||
}
|
||||
if ($output = self::attempt_splitting(\substr($datum, 0, $spacePos))) {
|
||||
return self::_turn_noda_split_time_to_before($output);
|
||||
}
|
||||
}
|
||||
if (\str_ends_with($datum, "termiusost quem")) {
|
||||
if (($spacePos = strrpos($datum, " ", -10)) === false) {
|
||||
return false;
|
||||
}
|
||||
if ($output = self::attempt_splitting(\substr($datum, 0, $spacePos))) {
|
||||
return new NodaSplitTime($output->start_year, '?', $output->counting_time_month, $output->counting_time_day,
|
||||
$output->counting_time_indicator, NodaTimeBeforeAfterIndicator::since, $output->start_date, '?');
|
||||
}
|
||||
}
|
||||
// Ends beginning with a hyphen
|
||||
if (\preg_match("/\-ig(\.|)$/", $datum)) {
|
||||
if (($spacePos = strrpos($datum, "-")) === false) {
|
||||
|
||||
@@ -50,6 +50,7 @@ final class NodaUncertaintyHelper {
|
||||
"Vermutl. ",
|
||||
"vermutlich ",
|
||||
"Vermutlich ",
|
||||
"vmtl. ",
|
||||
"wahrscheinlich ",
|
||||
"Wahrscheinlich ",
|
||||
"wohl ",
|
||||
@@ -98,6 +99,7 @@ final class NodaUncertaintyHelper {
|
||||
];
|
||||
|
||||
public const TIME_UNCERTAINTY_PREFIXES = [
|
||||
"angeblich ",
|
||||
"c. ",
|
||||
"ca ",
|
||||
"ca. ",
|
||||
@@ -109,19 +111,25 @@ final class NodaUncertaintyHelper {
|
||||
"circa ",
|
||||
"etwa ",
|
||||
"Etwa ",
|
||||
"evtl ",
|
||||
"Evtl ",
|
||||
"evtl.",
|
||||
"Evtl.",
|
||||
"gegen ",
|
||||
"um ",
|
||||
"Um ",
|
||||
"verm. ",
|
||||
"Verm. ",
|
||||
"vermtl. ",
|
||||
"Vermtl. ",
|
||||
"vermutl. ",
|
||||
"Vermutl. ",
|
||||
"verm.",
|
||||
"Verm.",
|
||||
"vermtl.",
|
||||
"Vermtl.",
|
||||
"vermutl.",
|
||||
"Vermutl.",
|
||||
"vermutlich ",
|
||||
"Vermutlich ",
|
||||
"vermutlich um ",
|
||||
"Vermutlich um ",
|
||||
"vmtl. ",
|
||||
"Vmtl. ",
|
||||
"wohl ",
|
||||
"wohl um ",
|
||||
"Wohl ",
|
||||
|
||||
@@ -764,6 +764,19 @@ final class NodaTimeSplitterTest extends TestCase {
|
||||
self::assertEquals($output->toTimeName(), "1920-1929");
|
||||
self::assertEquals(NodaTimeSplitter::timePartsToCountingYear($output), 1925);
|
||||
|
||||
$output = NodaTimeSplitter::attempt_splitting("2020 (terminus ante quem)");
|
||||
self::assertNotEmpty($output);
|
||||
self::assertEquals($output->toOldFormat(), [
|
||||
0 => "?",
|
||||
1 => "2019",
|
||||
2 => "00",
|
||||
3 => "00",
|
||||
4 => "+",
|
||||
5 => "Vor",
|
||||
]);
|
||||
self::assertEquals($output->toTimeName(), "Vor 2020");
|
||||
self::assertEquals(NodaTimeSplitter::timePartsToCountingYear($output), 2020);
|
||||
|
||||
$output = NodaTimeSplitter::attempt_splitting("Vor Dezember 2020");
|
||||
self::assertNotEmpty($output);
|
||||
self::assertEquals($output->toOldFormat(), [
|
||||
@@ -1271,6 +1284,20 @@ final class NodaTimeSplitterTest extends TestCase {
|
||||
self::assertEquals($output->toTimeName(), "Seit 1920");
|
||||
self::assertEquals(NodaTimeSplitter::timePartsToCountingYear($output), 1920);
|
||||
|
||||
// From 1920 onwards
|
||||
$output = NodaTimeSplitter::attempt_splitting("1926 (termius post quem)");
|
||||
self::assertNotEmpty($output);
|
||||
self::assertEquals($output->toOldFormat(), [
|
||||
0 => "1926",
|
||||
1 => "?",
|
||||
2 => "00",
|
||||
3 => "00",
|
||||
4 => "+",
|
||||
5 => "Seit",
|
||||
]);
|
||||
self::assertEquals($output->toTimeName(), "Seit 1926");
|
||||
self::assertEquals(NodaTimeSplitter::timePartsToCountingYear($output), 1926);
|
||||
|
||||
$output = NodaTimeSplitter::attempt_splitting("III. század");
|
||||
self::assertNotEmpty($output);
|
||||
self::assertEquals($output->toOldFormat(), [
|
||||
|
||||
Reference in New Issue
Block a user