spaCy/spacy/hu/tokenizer_exceptions.py

649 lines
3.8 KiB
Python
Raw Normal View History

2017-03-12 12:07:28 +00:00
# coding: utf8
2016-12-20 21:28:20 +00:00
from __future__ import unicode_literals
2016-12-08 11:06:36 +00:00
2017-04-19 23:22:52 +00:00
import regex as re
2017-01-14 14:51:59 +00:00
from spacy.language_data.punctuation import ALPHA_LOWER, CURRENCY
2017-01-14 14:56:41 +00:00
from ..language_data.tokenizer_exceptions import _URL_PATTERN
2017-01-14 14:51:59 +00:00
2016-12-20 21:28:20 +00:00
ABBREVIATIONS = """
A.
AG.
2016-12-20 21:28:20 +00:00
AkH.
.
B.
2016-12-20 21:28:20 +00:00
B.CS.
B.S.
B.Sc.
B.ú.é.k.
BE.
BEK.
BSC.
BSc.
BTK.
Bat.
2016-12-20 21:28:20 +00:00
Be.
Bek.
Bfok.
Bk.
Bp.
Bros.
Bt.
2016-12-20 21:28:20 +00:00
Btk.
Btke.
Btét.
C.
2016-12-20 21:28:20 +00:00
CSC.
Cal.
Cg.
Cgf.
Cgt.
Cia.
2016-12-20 21:28:20 +00:00
Co.
Colo.
Comp.
Copr.
Corp.
Cos.
2016-12-20 21:28:20 +00:00
Cs.
Csc.
Csop.
Cstv.
2016-12-20 21:28:20 +00:00
Ctv.
Ctvr.
2016-12-20 21:28:20 +00:00
D.
DR.
Dipl.
Dr.
Dsz.
Dzs.
E.
EK.
EU.
F.
2016-12-20 21:28:20 +00:00
Fla.
Folyt.
Fpk.
2016-12-20 21:28:20 +00:00
Főszerk.
G.
GK.
2016-12-20 21:28:20 +00:00
GM.
Gfv.
Gmk.
Gr.
Group.
Gt.
2016-12-20 21:28:20 +00:00
Gy.
H.
2016-12-20 21:28:20 +00:00
HKsz.
Hmvh.
I.
Ifj.
Inc.
2016-12-20 21:28:20 +00:00
Inform.
Int.
J.
Jr.
Jv.
K.
2016-12-20 21:28:20 +00:00
K.m.f.
KB.
2016-12-20 21:28:20 +00:00
KER.
KFT.
KRT.
Kb.
2016-12-20 21:28:20 +00:00
Ker.
Kft.
Kg.
Kht.
Kkt.
2016-12-20 21:28:20 +00:00
Kong.
Korm.
Kr.
Kr.e.
Kr.u.
Krt.
L.
LB.
Llc.
Ltd.
M.
2016-12-20 21:28:20 +00:00
M.A.
M.S.
M.SC.
M.Sc.
MA.
MH.
2016-12-20 21:28:20 +00:00
MSC.
MSc.
Mass.
Max.
2016-12-08 11:06:36 +00:00
Mlle.
Mme.
2016-12-20 21:28:20 +00:00
Mo.
Mr.
Mrs.
2016-12-08 11:06:36 +00:00
Ms.
2016-12-20 21:28:20 +00:00
Mt.
N.
2016-12-20 21:28:20 +00:00
N.N.
NB.
NBr.
Nat.
No.
2016-12-20 21:28:20 +00:00
Nr.
Ny.
Nyh.
Nyr.
Nyrt.
O.
OJ.
2016-12-20 21:28:20 +00:00
Op.
P.
2016-12-20 21:28:20 +00:00
P.H.
P.S.
PH.D.
PHD.
PROF.
Pf.
2016-12-20 21:28:20 +00:00
Ph.D
PhD.
Pk.
Pl.
Plc.
2016-12-20 21:28:20 +00:00
Pp.
Proc.
Prof.
Ptk.
R.
RT.
2016-12-20 21:28:20 +00:00
Rer.
Rt.
S.
2016-12-20 21:28:20 +00:00
S.B.
SZOLG.
Salg.
Sch.
Spa.
2016-12-20 21:28:20 +00:00
St.
Sz.
SzRt.
Szerk.
2016-12-20 21:28:20 +00:00
Szfv.
Szjt.
Szolg.
Szt.
Sztv.
Szvt.
Számv.
T.
2016-12-20 21:28:20 +00:00
TEL.
Tel.
Ty.
Tyr.
U.
2016-12-20 21:28:20 +00:00
Ui.
2017-01-14 14:51:59 +00:00
Ut.
V.
VB.
2016-12-20 21:28:20 +00:00
Vcs.
Vhr.
Vht.
Várm.
W.
X.
2016-12-20 21:28:20 +00:00
X.Y.
Y.
Z.
Zrt.
2016-12-20 21:28:20 +00:00
Zs.
2016-12-08 11:06:36 +00:00
a.C.
2016-12-20 21:28:20 +00:00
ac.
2016-12-08 11:06:36 +00:00
adj.
adm.
ag.
agit.
alez.
alk.
all.
2016-12-08 11:06:36 +00:00
altbgy.
2016-12-20 21:28:20 +00:00
an.
2016-12-08 11:06:36 +00:00
ang.
arch.
at.
atc.
2016-12-08 11:06:36 +00:00
aug.
2016-12-20 21:28:20 +00:00
b.a.
b.s.
b.sc.
2016-12-08 11:06:36 +00:00
bek.
belker.
berend.
biz.
bizt.
bo.
2016-12-20 21:28:20 +00:00
bp.
2016-12-08 11:06:36 +00:00
br.
2016-12-20 21:28:20 +00:00
bsc.
2016-12-08 11:06:36 +00:00
bt.
2016-12-20 21:28:20 +00:00
btk.
ca.
2016-12-08 11:06:36 +00:00
cc.
cca.
cf.
cif.
2016-12-20 21:28:20 +00:00
co.
corp.
cos.
2016-12-08 11:06:36 +00:00
cs.
2016-12-20 21:28:20 +00:00
csc.
2016-12-08 11:06:36 +00:00
csüt.
2016-12-20 21:28:20 +00:00
cső.
ctv.
2016-12-08 11:06:36 +00:00
dbj.
dd.
ddr.
de.
dec.
dikt.
dipl.
2016-12-20 21:28:20 +00:00
dj.
2016-12-08 11:06:36 +00:00
dk.
dl.
2016-12-08 11:06:36 +00:00
dny.
dolg.
dr.
du.
2016-12-20 21:28:20 +00:00
dzs.
2016-12-08 11:06:36 +00:00
ea.
ed.
eff.
egyh.
ell.
elv.
elvt.
em.
eng.
eny.
et.
etc.
ev.
ezr.
2016-12-20 21:28:20 +00:00
.
f.h.
2016-12-08 11:06:36 +00:00
f.é.
2016-12-20 21:28:20 +00:00
fam.
fb.
2016-12-08 11:06:36 +00:00
febr.
2016-12-20 21:28:20 +00:00
fej.
2016-12-08 11:06:36 +00:00
felv.
2016-12-20 21:28:20 +00:00
felügy.
2016-12-08 11:06:36 +00:00
ff.
ffi.
fhdgy.
fil.
fiz.
fm.
foglalk.
ford.
fp.
fr.
frsz.
fszla.
fszt.
ft.
fuv.
2016-12-20 21:28:20 +00:00
főig.
főisk.
főtörm.
főv.
2016-12-08 11:06:36 +00:00
gazd.
gimn.
gk.
gkv.
gmk.
2016-12-08 11:06:36 +00:00
gondn.
gr.
grav.
gy.
gyak.
gyártm.
2016-12-20 21:28:20 +00:00
gör.
2016-12-08 11:06:36 +00:00
hads.
hallg.
hdm.
hdp.
hds.
hg.
hiv.
hk.
hm.
ho.
honv.
hp.
hr.
hrsz.
hsz.
ht.
htb.
hv.
2016-12-20 21:28:20 +00:00
hőm.
2016-12-08 11:06:36 +00:00
i.e.
2016-12-20 21:28:20 +00:00
i.sz.
id.
ie.
2016-12-08 11:06:36 +00:00
ifj.
ig.
igh.
ill.
imp.
2016-12-20 21:28:20 +00:00
inc.
2016-12-08 11:06:36 +00:00
ind.
2016-12-20 21:28:20 +00:00
inform.
2016-12-08 11:06:36 +00:00
inic.
int.
io.
ip.
ir.
irod.
2017-01-14 21:24:58 +00:00
irod.
2016-12-08 11:06:36 +00:00
isk.
ism.
izr.
2016-12-20 21:28:20 +00:00
.
2016-12-08 11:06:36 +00:00
jan.
jav.
jegyz.
jgmk.
2016-12-08 11:06:36 +00:00
jjv.
jkv.
jogh.
jogt.
jr.
2016-12-20 21:28:20 +00:00
jvb.
2016-12-08 11:06:36 +00:00
júl.
jún.
karb.
kat.
2017-01-14 14:51:59 +00:00
kath.
2016-12-08 11:06:36 +00:00
kb.
kcs.
kd.
ker.
kf.
kft.
kht.
kir.
kirend.
kisip.
kiv.
kk.
kkt.
klin.
km.
korm.
2016-12-20 21:28:20 +00:00
kp.
krt.
kt.
ktsg.
kult.
kv.
kve.
képv.
kísérl.
2016-12-08 11:06:36 +00:00
kóth.
könyvt.
körz.
köv.
közj.
közl.
közp.
közt.
.
lat.
ld.
legs.
lg.
lgv.
loc.
lt.
2016-12-20 21:28:20 +00:00
ltd.
2016-12-08 11:06:36 +00:00
ltp.
luth.
2016-12-20 21:28:20 +00:00
m.a.
m.s.
m.sc.
ma.
2016-12-08 11:06:36 +00:00
mat.
max.
2016-12-08 11:06:36 +00:00
mb.
med.
megh.
met.
mf.
mfszt.
2016-12-20 21:28:20 +00:00
min.
2016-12-08 11:06:36 +00:00
miss.
mjr.
mjv.
mk.
2016-12-20 21:28:20 +00:00
mlle.
mme.
2016-12-08 11:06:36 +00:00
mn.
mozg.
2016-12-20 21:28:20 +00:00
mr.
mrs.
ms.
msc.
.
máj.
márc.
.
mélt.
2016-12-08 11:06:36 +00:00
.
műh.
műsz.
műv.
művez.
nagyker.
nagys.
2016-12-20 21:28:20 +00:00
nat.
nb.
2016-12-08 11:06:36 +00:00
neg.
nk.
no.
2016-12-08 11:06:36 +00:00
nov.
nu.
ny.
nyilv.
2016-12-20 21:28:20 +00:00
nyrt.
2016-12-08 11:06:36 +00:00
nyug.
obj.
okl.
okt.
old.
2016-12-08 11:06:36 +00:00
olv.
orsz.
ort.
ov.
ovh.
pf.
pg.
2016-12-20 21:28:20 +00:00
ph.d
ph.d.
phd.
phil.
pjt.
2016-12-08 11:06:36 +00:00
pk.
pl.
plb.
2016-12-20 21:28:20 +00:00
plc.
2016-12-08 11:06:36 +00:00
pld.
plur.
pol.
polg.
poz.
pp.
2016-12-20 21:28:20 +00:00
proc.
2016-12-08 11:06:36 +00:00
prof.
prot.
pság.
2016-12-20 21:28:20 +00:00
ptk.
2016-12-08 11:06:36 +00:00
pu.
.
2016-12-20 21:28:20 +00:00
r.k.
2016-12-08 11:06:36 +00:00
rac.
rad.
red.
ref.
reg.
2016-12-20 21:28:20 +00:00
rer.
2016-12-08 11:06:36 +00:00
rev.
rf.
rkp.
rkt.
rt.
rtg.
2016-12-20 21:28:20 +00:00
röv.
s.b.
s.k.
2016-12-08 11:06:36 +00:00
sa.
sb.
2016-12-08 11:06:36 +00:00
sel.
sgt.
sm.
st.
stat.
2016-12-20 21:28:20 +00:00
stb.
2016-12-08 11:06:36 +00:00
strat.
stud.
2016-12-08 11:06:36 +00:00
sz.
szakm.
szaksz.
szakszerv.
szd.
szds.
szept.
szerk.
szf.
szimf.
2016-12-20 21:28:20 +00:00
szjt.
2016-12-08 11:06:36 +00:00
szkv.
szla.
szn.
szolg.
2016-12-20 21:28:20 +00:00
szt.
2016-12-08 11:06:36 +00:00
szubj.
2016-12-20 21:28:20 +00:00
szöv.
szül.
2016-12-08 11:06:36 +00:00
tanm.
tb.
tbk.
tc.
techn.
tek.
2016-12-20 21:28:20 +00:00
tel.
2016-12-08 11:06:36 +00:00
tf.
tgk.
2016-12-20 21:28:20 +00:00
ti.
2016-12-08 11:06:36 +00:00
tip.
tisztv.
titks.
tk.
tkp.
tny.
tp.
tszf.
tszk.
tszkv.
tv.
tvr.
2016-12-20 21:28:20 +00:00
ty.
törv.
.
2016-12-08 11:06:36 +00:00
ua.
ui.
unit.
uo.
uv.
vas.
vb.
vegy.
vh.
vhol.
vhr.
2016-12-08 11:06:36 +00:00
vill.
vizsg.
vk.
vkf.
vkny.
vm.
vol.
vs.
vsz.
vv.
2016-12-20 21:28:20 +00:00
vál.
2017-01-14 14:51:59 +00:00
várm.
2016-12-20 21:28:20 +00:00
vízv.
.
zrt.
zs.
Á.
Áe.
Áht.
É.
Épt.
2016-12-20 21:28:20 +00:00
Ész.
Új-Z.
ÚjZ.
Ún.
2016-12-20 21:28:20 +00:00
á.
ált.
ápr.
ásv.
é.
ék.
ény.
érk.
évf.
í.
ó.
össz.
ötk.
özv.
ú.
ú.n.
2016-12-20 21:28:20 +00:00
úm.
ún.
út.
üag.
üd.
üdv.
üe.
ümk.
ütk.
üv.
ű.
őrgy.
őrpk.
őrv.
""".strip().split()
OTHER_EXC = """
-e
""".strip().split()
2017-01-14 14:51:59 +00:00
ORD_NUM_OR_DATE = "([A-Z0-9]+[./-])*(\d+\.?)"
_NUM = "[+\-]?\d+([,.]\d+)*"
_OPS = "[=<>+\-\*/^()÷%²]"
_SUFFIXES = "-[{a}]+".format(a=ALPHA_LOWER)
NUMERIC_EXP = "({n})(({o})({n}))*[%]?".format(n=_NUM, o=_OPS)
2017-01-14 14:51:59 +00:00
TIME_EXP = "\d+(:\d+)*(\.\d+)?"
NUMS = "(({ne})|({t})|({on})|({c}))({s})?".format(
ne=NUMERIC_EXP, t=TIME_EXP, on=ORD_NUM_OR_DATE,
c=CURRENCY, s=_SUFFIXES
2017-01-14 14:51:59 +00:00
)
2017-01-14 14:56:41 +00:00
TOKEN_MATCH = re.compile("^({u})|({n})$".format(u=_URL_PATTERN, n=NUMS)).match