mirror of
https://github.com/explosion/spaCy.git
synced 2024-11-14 13:47:13 +03:00
274 lines
13 KiB
Python
274 lines
13 KiB
Python
from typing import Dict, List
|
|
|
|
from ...symbols import NORM, ORTH
|
|
from ...util import update_exc
|
|
from ..tokenizer_exceptions import BASE_EXCEPTIONS
|
|
|
|
_exc: Dict[str, List[Dict]] = {}
|
|
|
|
_other_exc = {
|
|
"t.i.": [{ORTH: "t.", NORM: "tako"}, {ORTH: "i.", NORM: "imenovano"}],
|
|
"t.j.": [{ORTH: "t.", NORM: "to"}, {ORTH: "j.", NORM: "je"}],
|
|
"T.j.": [{ORTH: "T.", NORM: "to"}, {ORTH: "j.", NORM: "je"}],
|
|
"d.o.o.": [
|
|
{ORTH: "d.", NORM: "družba"},
|
|
{ORTH: "o.", NORM: "omejeno"},
|
|
{ORTH: "o.", NORM: "odgovornostjo"},
|
|
],
|
|
"D.O.O.": [
|
|
{ORTH: "D.", NORM: "družba"},
|
|
{ORTH: "O.", NORM: "omejeno"},
|
|
{ORTH: "O.", NORM: "odgovornostjo"},
|
|
],
|
|
"d.n.o.": [
|
|
{ORTH: "d.", NORM: "družba"},
|
|
{ORTH: "n.", NORM: "neomejeno"},
|
|
{ORTH: "o.", NORM: "odgovornostjo"},
|
|
],
|
|
"D.N.O.": [
|
|
{ORTH: "D.", NORM: "družba"},
|
|
{ORTH: "N.", NORM: "neomejeno"},
|
|
{ORTH: "O.", NORM: "odgovornostjo"},
|
|
],
|
|
"d.d.": [{ORTH: "d.", NORM: "delniška"}, {ORTH: "d.", NORM: "družba"}],
|
|
"D.D.": [{ORTH: "D.", NORM: "delniška"}, {ORTH: "D.", NORM: "družba"}],
|
|
"s.p.": [{ORTH: "s.", NORM: "samostojni"}, {ORTH: "p.", NORM: "podjetnik"}],
|
|
"S.P.": [{ORTH: "S.", NORM: "samostojni"}, {ORTH: "P.", NORM: "podjetnik"}],
|
|
"l.r.": [{ORTH: "l.", NORM: "lastno"}, {ORTH: "r.", NORM: "ročno"}],
|
|
"le-te": [{ORTH: "le"}, {ORTH: "-"}, {ORTH: "te"}],
|
|
"Le-te": [{ORTH: "Le"}, {ORTH: "-"}, {ORTH: "te"}],
|
|
"le-ti": [{ORTH: "le"}, {ORTH: "-"}, {ORTH: "ti"}],
|
|
"Le-ti": [{ORTH: "Le"}, {ORTH: "-"}, {ORTH: "ti"}],
|
|
"le-to": [{ORTH: "le"}, {ORTH: "-"}, {ORTH: "to"}],
|
|
"Le-to": [{ORTH: "Le"}, {ORTH: "-"}, {ORTH: "to"}],
|
|
"le-ta": [{ORTH: "le"}, {ORTH: "-"}, {ORTH: "ta"}],
|
|
"Le-ta": [{ORTH: "Le"}, {ORTH: "-"}, {ORTH: "ta"}],
|
|
"le-tega": [{ORTH: "le"}, {ORTH: "-"}, {ORTH: "tega"}],
|
|
"Le-tega": [{ORTH: "Le"}, {ORTH: "-"}, {ORTH: "tega"}],
|
|
}
|
|
|
|
_exc.update(_other_exc)
|
|
|
|
|
|
for exc_data in [
|
|
{ORTH: "adm.", NORM: "administracija"},
|
|
{ORTH: "aer.", NORM: "aeronavtika"},
|
|
{ORTH: "agr.", NORM: "agronomija"},
|
|
{ORTH: "amer.", NORM: "ameriško"},
|
|
{ORTH: "anat.", NORM: "anatomija"},
|
|
{ORTH: "angl.", NORM: "angleški"},
|
|
{ORTH: "ant.", NORM: "antonim"},
|
|
{ORTH: "antr.", NORM: "antropologija"},
|
|
{ORTH: "apr.", NORM: "april"},
|
|
{ORTH: "arab.", NORM: "arabsko"},
|
|
{ORTH: "arheol.", NORM: "arheologija"},
|
|
{ORTH: "arhit.", NORM: "arhitektura"},
|
|
{ORTH: "avg.", NORM: "avgust"},
|
|
{ORTH: "avstr.", NORM: "avstrijsko"},
|
|
{ORTH: "avt.", NORM: "avtomobilizem"},
|
|
{ORTH: "bibl.", NORM: "biblijsko"},
|
|
{ORTH: "biokem.", NORM: "biokemija"},
|
|
{ORTH: "biol.", NORM: "biologija"},
|
|
{ORTH: "bolg.", NORM: "bolgarski"},
|
|
{ORTH: "bot.", NORM: "botanika"},
|
|
{ORTH: "cit.", NORM: "citat"},
|
|
{ORTH: "daj.", NORM: "dajalnik"},
|
|
{ORTH: "del.", NORM: "deležnik"},
|
|
{ORTH: "ed.", NORM: "ednina"},
|
|
{ORTH: "etn.", NORM: "etnografija"},
|
|
{ORTH: "farm.", NORM: "farmacija"},
|
|
{ORTH: "filat.", NORM: "filatelija"},
|
|
{ORTH: "filoz.", NORM: "filozofija"},
|
|
{ORTH: "fin.", NORM: "finančništvo"},
|
|
{ORTH: "fiz.", NORM: "fizika"},
|
|
{ORTH: "fot.", NORM: "fotografija"},
|
|
{ORTH: "fr.", NORM: "francoski"},
|
|
{ORTH: "friz.", NORM: "frizerstvo"},
|
|
{ORTH: "gastr.", NORM: "gastronomija"},
|
|
{ORTH: "geogr.", NORM: "geografija"},
|
|
{ORTH: "geol.", NORM: "geologija"},
|
|
{ORTH: "geom.", NORM: "geometrija"},
|
|
{ORTH: "germ.", NORM: "germanski"},
|
|
{ORTH: "gl.", NORM: "glej"},
|
|
{ORTH: "glag.", NORM: "glagolski"},
|
|
{ORTH: "glasb.", NORM: "glasba"},
|
|
{ORTH: "gled.", NORM: "gledališče"},
|
|
{ORTH: "gost.", NORM: "gostinstvo"},
|
|
{ORTH: "gozd.", NORM: "gozdarstvo"},
|
|
{ORTH: "gr.", NORM: "grški"},
|
|
{ORTH: "grad.", NORM: "gradbeništvo"},
|
|
{ORTH: "hebr.", NORM: "hebrejsko"},
|
|
{ORTH: "hrv.", NORM: "hrvaško"},
|
|
{ORTH: "ide.", NORM: "indoevropsko"},
|
|
{ORTH: "igr.", NORM: "igre"},
|
|
{ORTH: "im.", NORM: "imenovalnik"},
|
|
{ORTH: "iron.", NORM: "ironično"},
|
|
{ORTH: "it.", NORM: "italijanski"},
|
|
{ORTH: "itd.", NORM: "in tako dalje"},
|
|
{ORTH: "itn.", NORM: "in tako naprej"},
|
|
{ORTH: "ipd.", NORM: "in podobno"},
|
|
{ORTH: "jap.", NORM: "japonsko"},
|
|
{ORTH: "jul.", NORM: "julij"},
|
|
{ORTH: "jun.", NORM: "junij"},
|
|
{ORTH: "kit.", NORM: "kitajsko"},
|
|
{ORTH: "knj.", NORM: "knjižno"},
|
|
{ORTH: "knjiž.", NORM: "knjižno"},
|
|
{ORTH: "kor.", NORM: "koreografija"},
|
|
{ORTH: "lat.", NORM: "latinski"},
|
|
{ORTH: "les.", NORM: "lesna stroka"},
|
|
{ORTH: "lingv.", NORM: "lingvistika"},
|
|
{ORTH: "lit.", NORM: "literarni"},
|
|
{ORTH: "ljubk.", NORM: "ljubkovalno"},
|
|
{ORTH: "lov.", NORM: "lovstvo"},
|
|
{ORTH: "m.", NORM: "moški"},
|
|
{ORTH: "mak.", NORM: "makedonski"},
|
|
{ORTH: "mar.", NORM: "marec"},
|
|
{ORTH: "mat.", NORM: "matematika"},
|
|
{ORTH: "med.", NORM: "medicina"},
|
|
{ORTH: "meh.", NORM: "mehiško"},
|
|
{ORTH: "mest.", NORM: "mestnik"},
|
|
{ORTH: "mdr.", NORM: "med drugim"},
|
|
{ORTH: "min.", NORM: "mineralogija"},
|
|
{ORTH: "mitol.", NORM: "mitologija"},
|
|
{ORTH: "mn.", NORM: "množina"},
|
|
{ORTH: "mont.", NORM: "montanistika"},
|
|
{ORTH: "muz.", NORM: "muzikologija"},
|
|
{ORTH: "nam.", NORM: "namenilnik"},
|
|
{ORTH: "nar.", NORM: "narečno"},
|
|
{ORTH: "nav.", NORM: "navadno"},
|
|
{ORTH: "nedol.", NORM: "nedoločnik"},
|
|
{ORTH: "nedov.", NORM: "nedovršni"},
|
|
{ORTH: "neprav.", NORM: "nepravilno"},
|
|
{ORTH: "nepreh.", NORM: "neprehodno"},
|
|
{ORTH: "neskl.", NORM: "nesklonljiv(o)"},
|
|
{ORTH: "nestrok.", NORM: "nestrokovno"},
|
|
{ORTH: "num.", NORM: "numizmatika"},
|
|
{ORTH: "npr.", NORM: "na primer"},
|
|
{ORTH: "obrt.", NORM: "obrtništvo"},
|
|
{ORTH: "okt.", NORM: "oktober"},
|
|
{ORTH: "or.", NORM: "orodnik"},
|
|
{ORTH: "os.", NORM: "oseba"},
|
|
{ORTH: "otr.", NORM: "otroško"},
|
|
{ORTH: "oz.", NORM: "oziroma"},
|
|
{ORTH: "pal.", NORM: "paleontologija"},
|
|
{ORTH: "papir.", NORM: "papirništvo"},
|
|
{ORTH: "ped.", NORM: "pedagogika"},
|
|
{ORTH: "pisar.", NORM: "pisarniško"},
|
|
{ORTH: "pog.", NORM: "pogovorno"},
|
|
{ORTH: "polit.", NORM: "politika"},
|
|
{ORTH: "polj.", NORM: "poljsko"},
|
|
{ORTH: "poljud.", NORM: "poljudno"},
|
|
{ORTH: "preg.", NORM: "pregovor"},
|
|
{ORTH: "preh.", NORM: "prehodno"},
|
|
{ORTH: "pren.", NORM: "preneseno"},
|
|
{ORTH: "prid.", NORM: "pridevnik"},
|
|
{ORTH: "prim.", NORM: "primerjaj"},
|
|
{ORTH: "prisl.", NORM: "prislov"},
|
|
{ORTH: "psih.", NORM: "psihologija"},
|
|
{ORTH: "psiht.", NORM: "psihiatrija"},
|
|
{ORTH: "rad.", NORM: "radiotehnika"},
|
|
{ORTH: "rač.", NORM: "računalništvo"},
|
|
{ORTH: "rib.", NORM: "ribištvo"},
|
|
{ORTH: "rod.", NORM: "rodilnik"},
|
|
{ORTH: "rus.", NORM: "rusko"},
|
|
{ORTH: "s.", NORM: "srednji"},
|
|
{ORTH: "sam.", NORM: "samostalniški"},
|
|
{ORTH: "sed.", NORM: "sedanjik"},
|
|
{ORTH: "sep.", NORM: "september"},
|
|
{ORTH: "slabš.", NORM: "slabšalno"},
|
|
{ORTH: "slovan.", NORM: "slovansko"},
|
|
{ORTH: "slovaš.", NORM: "slovaško"},
|
|
{ORTH: "srb.", NORM: "srbsko"},
|
|
{ORTH: "star.", NORM: "starinsko"},
|
|
{ORTH: "stil.", NORM: "stilno"},
|
|
{ORTH: "sv.", NORM: "svet(i)"},
|
|
{ORTH: "teh.", NORM: "tehnika"},
|
|
{ORTH: "tisk.", NORM: "tiskarstvo"},
|
|
{ORTH: "tj.", NORM: "to je"},
|
|
{ORTH: "tož.", NORM: "tožilnik"},
|
|
{ORTH: "trg.", NORM: "trgovina"},
|
|
{ORTH: "ukr.", NORM: "ukrajinski"},
|
|
{ORTH: "um.", NORM: "umetnost"},
|
|
{ORTH: "vel.", NORM: "velelnik"},
|
|
{ORTH: "vet.", NORM: "veterina"},
|
|
{ORTH: "vez.", NORM: "veznik"},
|
|
{ORTH: "vn.", NORM: "visokonemško"},
|
|
{ORTH: "voj.", NORM: "vojska"},
|
|
{ORTH: "vrtn.", NORM: "vrtnarstvo"},
|
|
{ORTH: "vulg.", NORM: "vulgarno"},
|
|
{ORTH: "vznes.", NORM: "vzneseno"},
|
|
{ORTH: "zal.", NORM: "založništvo"},
|
|
{ORTH: "zastar.", NORM: "zastarelo"},
|
|
{ORTH: "zgod.", NORM: "zgodovina"},
|
|
{ORTH: "zool.", NORM: "zoologija"},
|
|
{ORTH: "čeb.", NORM: "čebelarstvo"},
|
|
{ORTH: "češ.", NORM: "češki"},
|
|
{ORTH: "člov.", NORM: "človeškost"},
|
|
{ORTH: "šah.", NORM: "šahovski"},
|
|
{ORTH: "šalj.", NORM: "šaljivo"},
|
|
{ORTH: "šp.", NORM: "španski"},
|
|
{ORTH: "špan.", NORM: "špansko"},
|
|
{ORTH: "šport.", NORM: "športni"},
|
|
{ORTH: "štev.", NORM: "števnik"},
|
|
{ORTH: "šved.", NORM: "švedsko"},
|
|
{ORTH: "švic.", NORM: "švicarsko"},
|
|
{ORTH: "ž.", NORM: "ženski"},
|
|
{ORTH: "žarg.", NORM: "žargonsko"},
|
|
{ORTH: "žel.", NORM: "železnica"},
|
|
{ORTH: "živ.", NORM: "živost"},
|
|
]:
|
|
_exc[exc_data[ORTH]] = [exc_data]
|
|
|
|
|
|
abbrv = """
|
|
Co. Ch. DIPL. DR. Dr. Ev. Inc. Jr. Kr. Mag. M. MR. Mr. Mt. Murr. Npr. OZ.
|
|
Opr. Osn. Prim. Roj. ST. Sim. Sp. Sred. St. Sv. Škofl. Tel. UR. Zb.
|
|
a. aa. ab. abc. abit. abl. abs. abt. acc. accel. add. adj. adv. aet. afr. akad. al. alban. all. alleg.
|
|
alp. alt. alter. alžir. am. an. andr. ang. anh. anon. ans. antrop. apoc. app. approx. apt. ar. arc. arch.
|
|
arh. arr. as. asist. assist. assoc. asst. astr. attn. aug. avstral. az. b. bab. bal. bbl. bd. belg. bioinf.
|
|
biomed. bk. bl. bn. borg. bp. br. braz. brit. bros. broš. bt. bu. c. ca. cal. can. cand. cantab. cap. capt.
|
|
cat. cath. cc. cca. cd. cdr. cdre. cent. cerkv. cert. cf. cfr. ch. chap. chem. chr. chs. cic. circ. civ. cl.
|
|
cm. cmd. cnr. co. cod. col. coll. colo. com. comp. con. conc. cond. conn. cons. cont. coop. corr. cost. cp.
|
|
cpl. cr. crd. cres. cresc. ct. cu. d. dan. dat. davč. ddr. dec. ded. def. dem. dent. dept. dia. dip. dipl.
|
|
dir. disp. diss. div. do. doc. dok. dol. doo. dop. dott. dr. dram. druž. družb. drž. dt. duh. dur. dvr. dwt. e.
|
|
ea. ecc. eccl. eccles. econ. edn. egipt. egr. ekon. eksp. el. em. enc. eng. eo. ep. err. esp. esq. est.
|
|
et. etc. etnogr. etnol. ev. evfem. evr. ex. exc. excl. exp. expl. ext. exx. f. fa. facs. fak. faks. fas.
|
|
fasc. fco. fcp. feb. febr. fec. fed. fem. ff. fff. fid. fig. fil. film. fiziol. fiziot. flam. fm. fo. fol. folk.
|
|
frag. fran. franc. fsc. g. ga. gal. gdč. ge. gen. geod. geog. geotehnol. gg. gimn. glas. glav. gnr. go. gor.
|
|
gosp. gp. graf. gram. gren. grš. gs. h. hab. hf. hist. ho. hort. i. ia. ib. ibid. id. idr. idridr. ill. imen.
|
|
imp. impf. impr. in. inc. incl. ind. indus. inf. inform. ing. init. ins. int. inv. inšp. inštr. inž. is. islam.
|
|
ist. ital. iur. iz. izbr. izd. izg. izgr. izr. izv. j. jak. jam. jan. jav. je. jez. jr. jsl. jud. jug.
|
|
jugoslovan. jur. juž. jv. jz. k. kal. kan. kand. kat. kdo. kem. kip. kmet. kol. kom. komp. konf. kont. kost. kov.
|
|
kp. kpfw. kr. kraj. krat. kub. kult. kv. kval. l. la. lab. lb. ld. let. lib. lik. litt. lj. ljud. ll. loc. log.
|
|
loč. lt. ma. madž. mag. manag. manjš. masc. mass. mater. max. maxmax. mb. md. mech. medic. medij. medn.
|
|
mehč. mem. menedž. mes. mess. metal. meteor. meteorol. mex. mi. mikr. mil. minn. mio. misc. miss. mit. mk.
|
|
mkt. ml. mlad. mlle. mlr. mm. mme. množ. mo. moj. moš. možn. mr. mrd. mrs. ms. msc. msgr. mt. murr. mus. mut.
|
|
n. na. nad. nadalj. nadom. nagl. nakl. namer. nan. naniz. nasl. nat. navt. nač. ned. nem. nik. nizoz. nm. nn.
|
|
no. nom. norv. notr. nov. novogr. ns. o. ob. obd. obj. oblač. obl. oblik. obr. obraz. obs. obst. obt. obč. oc.
|
|
oct. od. odd. odg. odn. odst. odv. oec. off. ok. okla. okr. ont. oo. op. opis. opp. opr. orch. ord. ore. oreg.
|
|
org. orient. orig. ork. ort. oseb. osn. ot. ozir. ošk. p. pag. par. para. parc. parl. part. past. pat. pdk.
|
|
pen. perf. pert. perz. pesn. pet. pev. pf. pfc. ph. pharm. phil. pis. pl. po. pod. podr. podaljš. pogl. pogoj. pojm.
|
|
pok. pokr. pol. poljed. poljub. polu. pom. pomen. pon. ponov. pop. por. port. pos. posl. posn. pov. pp. ppl. pr.
|
|
praet. prav. pravopis. pravosl. preb. pred. predl. predm. predp. preds. pref. pregib. prel. prem. premen. prep.
|
|
pres. pret. prev. pribl. prih. pril. primerj. primor. prip. pripor. prir. prist. priv. proc. prof. prog. proiz.
|
|
prom. pron. prop. prot. protest. prov. ps. pss. pt. publ. pz. q. qld. qu. quad. que. r. racc. rastl. razgl.
|
|
razl. razv. rd. red. ref. reg. rel. relig. rep. repr. rer. resp. rest. ret. rev. revol. rež. rim. rist. rkp. rm.
|
|
roj. rom. romun. rp. rr. rt. rud. ruš. ry. sal. samogl. san. sc. scen. sci. scr. sdv. seg. sek. sen. sept. ser.
|
|
sev. sg. sgt. sh. sig. sigg. sign. sim. sin. sing. sinh. skand. skl. sklad. sklanj. sklep. skr. sl. slik. slov.
|
|
slovak. slovn. sn. so. sob. soc. sociol. sod. sopomen. sopr. sor. sov. sovj. sp. spec. spl. spr. spreg. sq. sr.
|
|
sre. sred. sredoz. srh. ss. ssp. st. sta. stan. stanstar. stcsl. ste. stim. stol. stom. str. stroj. strok. stsl.
|
|
stud. sup. supl. suppl. svet. sz. t. tab. tech. ted. tehn. tehnol. tek. teks. tekst. tel. temp. ten. teol. ter.
|
|
term. test. th. theol. tim. tip. tisočl. tit. tl. tol. tolmač. tom. tor. tov. tr. trad. traj. trans. tren.
|
|
trib. tril. trop. trp. trž. ts. tt. tu. tur. turiz. tvor. tvorb. tč. u. ul. umet. un. univ. up. upr. ur. urad.
|
|
us. ust. utr. v. va. val. var. varn. ven. ver. verb. vest. vezal. vic. vis. viv. viz. viš. vod. vok. vol. vpr.
|
|
vrst. vrstil. vs. vv. vzd. vzg. vzh. vzor. w. wed. wg. wk. x. y. z. zah. zaim. zak. zap. zasl. zavar. zač. zb.
|
|
združ. zg. zn. znan. znanstv. zoot. zun. zv. zvd. á. é. ć. č. čas. čet. čl. člen. čustv. đ. ľ. ł. ş. ŠT. š. šir.
|
|
škofl. škot. šol. št. števil. štud. ů. ű. žen. žival.
|
|
""".split()
|
|
|
|
for orth in abbrv:
|
|
_exc[orth] = [{ORTH: orth}]
|
|
|
|
|
|
TOKENIZER_EXCEPTIONS = update_exc(BASE_EXCEPTIONS, _exc)
|