spaCy/spacy/es/tokenizer_exceptions.py

83 lines
2.1 KiB
Python
Raw Normal View History

2017-03-12 12:07:28 +00:00
# coding: utf8
2016-12-18 15:54:19 +00:00
from __future__ import unicode_literals
2017-05-08 13:48:04 +00:00
from ..symbols import ORTH, LEMMA, TAG, NORM, ADP, DET
from ..deprecated import PRON_LEMMA, DET_LEMMA
2016-12-18 15:54:19 +00:00
2017-05-08 13:48:04 +00:00
_exc = {
2016-12-18 15:54:19 +00:00
"al": [
{ORTH: "a", LEMMA: "a", TAG: ADP},
2017-05-08 13:48:04 +00:00
{ORTH: "l", LEMMA: "el", TAG: DET}],
2016-12-18 15:54:19 +00:00
"consigo": [
{ORTH: "con", LEMMA: "con"},
2017-05-08 13:48:04 +00:00
{ORTH: "sigo", LEMMA: PRON_LEMMA, NORM: ""}],
2016-12-18 15:54:19 +00:00
"conmigo": [
{ORTH: "con", LEMMA: "con"},
2017-05-08 13:48:04 +00:00
{ORTH: "migo", LEMMA: PRON_LEMMA, NORM: ""}],
2016-12-18 15:54:19 +00:00
"contigo": [
{ORTH: "con", LEMMA: "con"},
2017-05-08 13:48:04 +00:00
{ORTH: "tigo", LEMMA: PRON_LEMMA, NORM: "ti"}],
2016-12-18 15:54:19 +00:00
"del": [
{ORTH: "de", LEMMA: "de", TAG: ADP},
2017-05-08 13:48:04 +00:00
{ORTH: "l", LEMMA: "el", TAG: DET}],
2016-12-18 15:54:19 +00:00
"pel": [
{ORTH: "pe", LEMMA: "per", TAG: ADP},
2017-05-08 13:48:04 +00:00
{ORTH: "l", LEMMA: "el", TAG: DET}],
2016-12-18 15:54:19 +00:00
"pal": [
{ORTH: "pa", LEMMA: "para"},
2017-05-08 13:48:04 +00:00
{ORTH: "l", LEMMA: DET_LEMMA, NORM: "el"}],
2016-12-18 15:54:19 +00:00
"pala": [
{ORTH: "pa", LEMMA: "para"},
2017-05-08 13:48:04 +00:00
{ORTH: "la", LEMMA: DET_LEMMA}]
}
2017-05-08 13:48:04 +00:00
for exc_data in [
{ORTH: "aprox.", LEMMA: "aproximadamente"},
{ORTH: "dna.", LEMMA: "docena"},
{ORTH: "esq.", LEMMA: "esquina"},
{ORTH: "pág.", LEMMA: "página"},
{ORTH: "p.ej.", LEMMA: "por ejemplo"},
{ORTH: "Ud.", LEMMA: PRON_LEMMA, NORM: "usted"},
{ORTH: "Vd.", LEMMA: PRON_LEMMA, NORM: "usted"},
{ORTH: "Uds.", LEMMA: PRON_LEMMA, NORM: "ustedes"},
{ORTH: "Vds.", LEMMA: PRON_LEMMA, NORM: "ustedes"}]:
_exc[exc_data[ORTH]] = [dict(exc_data)]
2017-05-08 13:48:04 +00:00
# Times
2017-05-08 13:48:04 +00:00
_exc["12m."] = [
{ORTH: "12"},
{ORTH: "m.", LEMMA: "p.m."}]
2017-05-08 13:48:04 +00:00
for h in range(1, 12 + 1):
hour = str(h)
for period in ["a.m.", "am"]:
_exc[hour+period] = [
{ORTH: hour},
{ORTH: period, LEMMA: "a.m."}]
for period in ["p.m.", "pm"]:
_exc[hour+period] = [
{ORTH: hour},
{ORTH: period, LEMMA: "p.m."}]
2017-05-08 13:48:04 +00:00
for orth in [
"a.C.", "a.J.C.", "apdo.", "Av.", "Avda.", "Cía.", "etc.", "Gob.", "Gral.",
"Ing.", "J.C.", "Lic.", "m.n.", "no.", "núm.", "P.D.", "Prof.", "Profa.",
"q.e.p.d.", "S.A.", "S.L.", "s.s.s.", "Sr.", "Sra.", "Srta."]:
_exc[orth] = [{ORTH: orth}]
2016-12-18 15:54:19 +00:00
2017-05-08 13:48:04 +00:00
TOKENIZER_EXCEPTIONS = dict(_exc)