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