From c8e86617a771c53813a86d64bd3467aa75c63307 Mon Sep 17 00:00:00 2001 From: László Németh Date: Wed, 14 Mar 2018 15:21:05 +0100 Subject: Hungarian grammar checking rules v1.6.4 Check reference fields with articles and affixes. Note: fields (except footnote numbers) are expanded again for grammar checking and expanded content has got an initial ZWSP character for more precise proofreading rules, see commit aab440c768b64b9d2ffa72223b6d843a84c2d061. Change-Id: I27b3075015335bbb72ddb5b234fd48b661ba6e80 Reviewed-on: https://gerrit.libreoffice.org/51279 Reviewed-by: Andras Timar Tested-by: Andras Timar --- hu_HU/README_lightproof_hu_HU.txt | 2 +- hu_HU/description.xml | 2 +- hu_HU/pythonpath/lightproof_hu_HU.py | 2 +- hu_HU/pythonpath/lightproof_impl_hu_HU.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'hu_HU') diff --git a/hu_HU/README_lightproof_hu_HU.txt b/hu_HU/README_lightproof_hu_HU.txt index c6bf1f4..1d1c411 100644 --- a/hu_HU/README_lightproof_hu_HU.txt +++ b/hu_HU/README_lightproof_hu_HU.txt @@ -1,3 +1,3 @@ -Hungarian sentence checker for LibreOffice, version 1.6.3 +Hungarian sentence checker for LibreOffice, version 1.6.4 see git://anongit.freedesktop.org/libreoffice/lightproof 2009-2018 (c) László Németh, license: MPL 1.1 / GPLv3+ / LGPLv3+ diff --git a/hu_HU/description.xml b/hu_HU/description.xml index 072e2c3..17af36c 100644 --- a/hu_HU/description.xml +++ b/hu_HU/description.xml @@ -1,6 +1,6 @@ - + Hungarian spelling dictionary, hyphenation rules, thesaurus, and grammar checker diff --git a/hu_HU/pythonpath/lightproof_hu_HU.py b/hu_HU/pythonpath/lightproof_hu_HU.py index f207777..8f36b17 100644 --- a/hu_HU/pythonpath/lightproof_hu_HU.py +++ b/hu_HU/pythonpath/lightproof_hu_HU.py @@ -1,4 +1,4 @@ # -*- encoding: UTF-8 -*- from __future__ import unicode_literals -dic = [['(?iu)(?[a-zöüóőúéáűí]+)(?![-\\w\\u2013\\u00AD])', '= m.group("low_1").capitalize()', 'Hiányzó nagy kezdőbetű?', 'paralcap.search(TEXT) and not abbrev.search(TEXT)', 0], ['(?u)((?<=[!?.] )|^)(?P[a-zöüóőúéáűí]+)(?![-\\w\\u2013\\u00AD])', '= m.group("low_1").capitalize()', 'Hiányzó nagy kezdőbetű?', 'option(LOCALE,"cap") and not abbrev.search(TEXT)', 0], ['(?u)^[-—] ', '– ', 'A gondolatjel nagykötőjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240l', 'option(LOCALE,"dash")', 0], ['(?u) [-—]([ ,;])', ' –\\1', 'A gondolatjel nagykötőjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240l', 'option(LOCALE,"dash")', 0], ['(?u)^[-–](?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ]+)', '– \\g', 'Gondolatjel szóközzel a felsorolásnál | http://helyesiras.mta.hu/helyesiras/default/akh12#259', 'option(LOCALE,"dash")', 0], ['(?u)[[][.][.][.]]', '[…]', 'Három pont | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', 'option(LOCALE,"elli")', 0], ['(?u)[.][.][.]', '…', 'Három pont | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', 'option(LOCALE,"elli")', 0], ['(?u) +([.?!,:;)”])\\b', '\\1 ', 'Felcserélt szóköz és írásjel?', False, 0], ['(?u) +([.?!,:;)”])', '\\1', 'Szóköz nélkül tapadó írásjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240', False, 0], ['(?u)[:,;]([.?!,;:])(?P( |$))', '\\1\\g', 'Felesleges írásjel.', False, 0], ['(?u)\\b[.][.](?P( |$))', '.\\g|…\\g', 'Pont vagy három pont? | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', False, 0], ['(?u)(\\w)(?P[?!,:;%‰‱°„”])(?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ])', '\\1\\g \\g', 'Hiányzó szóköz?', False, 0], ['(?u)(?P[a-zöüóűőúéáí])[.](?P[A-ZÖÜÓŰŐÚÉÁÍ])', '\\g. \\g', 'Hiányzó szóköz?', False, 0], ['(?u)(^|\\b|(?P[?!,:;%‰‱°„”])|[.]) {2,3}(\\b|$)', '\\1 ', 'Felesleges szóköz.', 'option(LOCALE,"spaces")', 0], ['(?u)(^|\\b|(?P[?!,:;%‰‱°„”])|[.]) {4,}(\\b|$)', '\\1 |\\1\t', 'Szóközök cseréje egy szóközre vagy tabulátorra:', 'option(LOCALE,"spaces2")', 0], ['(?iu)(\\d+)([Xx]| [Xx] )(\\d+(-\\w+)?)', '\\1×\\3|\\1\u202f·\u202f\\3', 'Szorzásjel. | http://hu.wikisource.org/wiki/A_magyar_helyesírás_szabályai/Az_írásjelek#275.', False, 0], ["(?iu)(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)['´](?P(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])*)", '\\g’\\g', 'Valódi aposztróf. | http://helyesiras.mta.hu/helyesiras/default/akh12#275', 'option(LOCALE,"apost")', 0], ["(?u)['´](\\d\\d(-\\w+)?)", '’\\1', 'Valódi aposztróf. | http://helyesiras.mta.hu/helyesiras/default/akh12#275', 'option(LOCALE,"apost")', 0], ['(?u)[)]', '', 'Felesleges zárójel?', 'option(LOCALE,"par") and not "(" in TEXT', 0], ['(?iu)[\\"“”‟„]((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„]*)[\\"“‟]', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', 'option(LOCALE,"quot")', 0], ['(?iu)[\\"“”‟]((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„]*)[\\"“”‟]', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', 'option(LOCALE,"quot")', 0], ['(?iu),,((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„_1><\']*)\'\'', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)>>((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„_1><\']*)<<', '»\\1«', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)‘+((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„’]*)’+', '„\\1”|»\\1«', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)(?[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„’]*)»(?![-\\w\\u2013\\u00AD])', '»\\1«', 'Felcserélt belső idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)(?", m.group(3)).replace(u"ezeregyszáz", u"ezerszáz").replace(u"kettő", u"két")', 0], ['(?iu)(?[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])[ \xa0]){4,}(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])\\b(?![-\\w\\u2013\\u00AD])', '=re.sub("[ \xa0]", "", m.group(0)) + "\\n" + re.sub("[ \xa0]", "\u202f", m.group(0))', 'Ritkítás nélkül vagy nem törő keskeny szóközökkel:', 'option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{2,3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})(?P\\d{3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})(?P\\d{3})(?P\\d{3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{2,3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g\u202f\\g\xa0\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{2,3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})(?P\\d{3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})(?P\\d{3})(?P\\d{3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{2,3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?[12]\\d\\d\\d)[.] (?PJanuár|Február|Március|Április|Május|Június|Július|Augusztus|Szeptember|Október|November|December)\\b(?![-\\w\\u2013\\u00AD])', '= m.group("year_1") + ". " + m.group("Month_1").lower()', 'A hónap nevét kisbetűvel írjuk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P(|[^-–jaáeé][a-zöüóűőúéáí]*))(?![-\\w\\u2013\\u00AD])', '\\g. \\g\\g', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P[-–](?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P(|[^-–jaáeé][a-zöüóűőúéáí]*)))(?![-\\w\\u2013\\u00AD])', '\\g. \\g\\g', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) évi(?![-\\w\\u2013\\u00AD])', '\\g. évi', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d)[-–](?P\\d\\d) évi(?![-\\w\\u2013\\u00AD])', '\\g–\\g. évi', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d)[.] (?Pfolyamán|előtti?|utáni?|közötti?|nyara|nyará\\w+|tele|telé\\w+|tavasza|tavaszá\\w+|ősze|őszé\\w+)\\b(?![-\\w\\u2013\\u00AD])', '\\g \\g', 'Az évszám után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#297', False, 0], ['(?u)(?[12]\\d\\d\\d)[.] (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P([jaáe]|é\\w)\\w*)\\b(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g', 'Az évszám után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#297', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[.]-(?P\\w*)', '\\g \\g-\\g', 'A nap után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#298', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])(?P[ ,;:?!])', '\\g \\g.\\g', 'Ha dátum, hiányzik a pont. | http://helyesiras.mta.hu/helyesiras/default/akh12#295', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[.] [Éé][Ss] (?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. és \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9]) [Éé][Ss] (?P[12]\\d|3[01]|0?[1-9])[.]? (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. és \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[-–](?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g–\\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])-(?P[12]\\d|3[01]|0?[1-9]). (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g–\\g. \\g', 'A napok közé nagykötőjelet írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)[.](?P0?[1-9]|1[012])[.](?P[12]\\d|3[01]|0?[1-9])(?P([.]|))(?P[^\\s][^\\s]*)', '\\g. \\g.\xa0\\g\\g\\g', 'Szóköz a dátumban. | http://helyesiras.mta.hu/helyesiras/default/akh12#295', False, 0], ['(?u)(?<=\\s)\\b([14579]|10|[12][124579]|31)(-a|-á\\w+)', '= m.group(1) + m.group(2).translate(str.maketrans(u"aáoó", u"eéeő"))', 'Hibás dátum?', 'stem(LOCALE,"2" + m.group(2)) == ["2"]', 0], ['(?u)(?<=\\s)\\b([2368]|[23]0|[12][368])(-j?e|-j?é\\w+)', '= m.group(1) + m.group(2).replace("j", "").replace("e", "a").replace("haz", "hoz").replace(u"é", u"á").replace(u"ő", u"ó")', 'Hibás dátum?', 'stem(LOCALE,"1" + m.group(2)) == ["1"]', 0], ['(?u)\\bstb[.], stb[.]', 'stb. stb.|stb.; stb.', 'Két stb. közé nem teszünk vesszőt.', False, 0], ['(?u)(?[a-zöüóűőúéáí]))(?![-\\w\\u2013\\u00AD])', '\\1', 'Nem ponttal írjuk ezt a rövidítést.', False, 0], ['(?u)(?[Aa][Ll][Bb][Áá][Nn]|[Aa][Mm][Ee][Rr][Ii][Kk][Aa][Ii]|[Aa][Nn][Gg][Oo][Ll]|[Bb][Ee][Ll][Gg][Aa]|[Bb][Oo][Ll][Gg][Áá][Rr]|[Bb][Oo][Ss][Nn][Yy][Áá][Kk]|[Bb][Rr][Ii][Tt]|[Cc][Ii][Pp][Rr][Uu][Ss][Ii]|[Cc][Ss][Ee][Hh]|[Dd][Áá][Nn]|[Éé][Ss][Zz][Tt]|[Ff][Ii][Nn][Nn]|[Ff][Rr][Aa][Nn][Cc][Ii][Aa]|[Gg][Öö][Rr][Öö][Gg]|[Hh][Oo][Ll][Ll][Aa][Nn][Dd]|[Hh][Oo][Rr][Vv][Áá][Tt]|[Íí][Rr]|[Jj][Aa][Pp][Áá][Nn]|[Kk][Íí][Nn][Aa][Ii]|[Ll][Ee][Nn][Gg][Yy][Ee][Ll]|[Ll][Ee][Tt][Tt]|[Ll][Ii][Tt][Vv][Áá][Nn]|[Mm][Aa][Cc][Ee][Dd][Óó][Nn]|[Mm][Aa][Gg][Yy][Aa][Rr]|[Mm][Áá][Ll][Tt][Aa][Ii]|[Nn][Éé][Mm][Ee][Tt]|[Nn][Oo][Rr][Vv][Éé][Gg]|[Oo][Ll][Aa][Ss][Zz]|[Oo][Rr][Oo][Ss][Zz]|[Oo][Ss][Zz][Tt][Rr][Áá][Kk]|[Pp][Oo][Rr][Tt][Uu][Gg][Áá][Ll]|[Rr][Oo][Mm][Áá][Nn]|[Ss][Pp][Aa][Nn][Yy][Oo][Ll]|[Ss][Vv][Áá][Jj][Cc][Ii]|[Ss][Vv][Éé][Dd]|[Ss][Zz][Ee][Rr][Bb]|[Ss][Zz][Ll][Oo][Vv][Áá][Kk]|[Ss][Zz][Ll][Oo][Vv][Éé][Nn]|[Tt][Öö][Rr][Öö][Kk]|[Uu][Kk][Rr][Áá][Nn])-(?P[Aa][Ll][Bb][Áá][Nn]|[Aa][Mm][Ee][Rr][Ii][Kk][Aa][Ii]|[Aa][Nn][Gg][Oo][Ll]|[Bb][Ee][Ll][Gg][Aa]|[Bb][Oo][Ll][Gg][Áá][Rr]|[Bb][Oo][Ss][Nn][Yy][Áá][Kk]|[Bb][Rr][Ii][Tt]|[Cc][Ii][Pp][Rr][Uu][Ss][Ii]|[Cc][Ss][Ee][Hh]|[Dd][Áá][Nn]|[Éé][Ss][Zz][Tt]|[Ff][Ii][Nn][Nn]|[Ff][Rr][Aa][Nn][Cc][Ii][Aa]|[Gg][Öö][Rr][Öö][Gg]|[Hh][Oo][Ll][Ll][Aa][Nn][Dd]|[Hh][Oo][Rr][Vv][Áá][Tt]|[Íí][Rr]|[Jj][Aa][Pp][Áá][Nn]|[Kk][Íí][Nn][Aa][Ii]|[Ll][Ee][Nn][Gg][Yy][Ee][Ll]|[Ll][Ee][Tt][Tt]|[Ll][Ii][Tt][Vv][Áá][Nn]|[Mm][Aa][Cc][Ee][Dd][Óó][Nn]|[Mm][Aa][Gg][Yy][Aa][Rr]|[Mm][Áá][Ll][Tt][Aa][Ii]|[Nn][Éé][Mm][Ee][Tt]|[Nn][Oo][Rr][Vv][Éé][Gg]|[Oo][Ll][Aa][Ss][Zz]|[Oo][Rr][Oo][Ss][Zz]|[Oo][Ss][Zz][Tt][Rr][Áá][Kk]|[Pp][Oo][Rr][Tt][Uu][Gg][Áá][Ll]|[Rr][Oo][Mm][Áá][Nn]|[Ss][Pp][Aa][Nn][Yy][Oo][Ll]|[Ss][Vv][Áá][Jj][Cc][Ii]|[Ss][Vv][Éé][Dd]|[Ss][Zz][Ee][Rr][Bb]|[Ss][Zz][Ll][Oo][Vv][Áá][Kk]|[Ss][Zz][Ll][Oo][Vv][Éé][Nn]|[Tt][Öö][Rr][Öö][Kk]|[Uu][Kk][Rr][Áá][Nn])\\b', '\\g–\\g', 'Népnevek közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P(1\\d\\d[1-9]|1\\d[1-9]\\d|20\\d[1-9]|20[1-9]\\d))-(?P[12]\\d\\d\\d)\\b ', '\\g–\\g ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)-(?P(1\\d\\d[1-9]|1\\d[1-9]\\d|20\\d[1-9]|20[1-9]\\d))\\b ', '\\g–\\g ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)-(\\d\\d)\\b ', '\\g–\\2 ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)([A-ZÖÜÓŰŐÚÉÁÍ]\\w*)-(\\d+(-\\w+)?)', '\\1–\\2', 'Típusnév és -szám közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#294', False, 0], ['(?u)pp[.] (\\d+)-(\\d+)[.]', 'pp. \\1–\\2.', 'Oldalszámok közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#264c', False, 0], ['(?u)(\\d+)-(\\d+)[.] (o[.]|oldal\\w*)', '\\1–\\2. \\3', 'Oldalszámok közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#264c', False, 0], ['(?u) (u[.]|utca|út|tér) (\\d\\d*)-(\\d\\d*)[.]', ' \\1 \\2–\\3.', 'Nagykötőjel a házszámban. | http://hu.wikisource.org/wiki/A_magyar_helyesírás_szabályai/Egyéb_tudnivalók#298.', False, 0], ['(?iu)(?\\g<1>", re.sub(r"([cdgklptv]..|[cgsz][syz]..|dzs..|(?<=[nr])[sz]..)$", r"@\\g<1>", m.group(0))).replace("xel", "xszel")', 'Névszóként -val/-vel toldalékkal. | http://helyesiras.mta.hu/helyesiras/default/akh12#42', 'wordmin(s[:m.start()],1).lower() == "a" and morph(LOCALE,m.group(0), r"po:vrb\\b", False) and morph(LOCALE,m.group(0)[:-2], r"po:noun\\b")', 0], ['(?u)(?[aáeéiíoóöőuúüűAÁEÉIÍOÓÖŐUÚÜŰ]\\w*)', 'az \\g', 'Hibás névelő?', 'not re.match(r"(?i)i(ii?|[vx])$|Unicode$|Unix\\w*$", m.group("aword_1")) and spell(LOCALE,m.group("aword_1"))', 0], ['(?u)(?[aA]) (?P[aáeéiíoóöőuúüűAÁEÉIÍOÓÖŐUÚÜŰ]\\w*)', '\\gz \\g|\\g', 'Hibás vagy felesleges névelő?', 'wordmin(s[:m.start()],1) and not re.match(r"(?i)i(ii?|[vx])$|Unicode$|Unix\\w*$", m.group("aword_1")) and spell(LOCALE,m.group("aword_1"))', 0], ['(?iu)(?\\d+|\\d+,\\d+) [Gg][Rr][.]?-[Mm][Aa][Ll](?![-\\w\\u2013\\u00AD])', '\\g g-mal', 'A grammal rövidítése g-mal | http://helyesiras.mta.hu/helyesiras/default/akh12#288', False, 0], ['(?u) A vitamin(?P\\w*)', ' A-vitamin\\g', 'Kötőjeles név.', False, 0], ['(?u)(?\\w*)(?![-\\w\\u2013\\u00AD])', '\\1-vitamin\\g', 'Kötőjeles név.', False, 0], ['(?u)(?\\w*)', 'nyíltszívű\\g', 'Egybeírás.', False, 0], ['(?iu)\\b[Jj][Óó] [Ss][Zz][Áá][Nn][Dd][Éé][Kk][Úú](?P\\w*)', 'jószándékú\\g', 'Egybeírás.', False, 0], ['(?iu)[Kk][Öö][Zz][Öö][Ss] [Ll][Óó][Nn][Aa][Kk] [Tt][Úú][Rr][Óó][Ss]', 'közös lónak túros', 'Helyes kifejezés.', False, 0], ['(?iu)\\b[Ll][Oo][Bb][Oo][Tt] [Vv][Ee][Tt](?P\\w*)\\b', 'lobbot vet\\g', 'Helyes kifejezés.', False, 0], ['(?iu)\\b[Nn][Ee][Jj][Ll][Oo][Nn] [Hh][Aa][Rr][Ii][Ss][Nn][Yy][Aa]\\b', 'nejlonharisnya', 'Egybeírás.', False, 0], ['(?iu)\\b[Oo][Dd][Aa]-[Vv][Ii][Ss][Ss][Zz][Aa](?P[a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ][a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ]*)', 'oda-vissza \\g', 'Különírás.', False, 0], ['(?iu)\\b[Pp][Rr][Oo] [Éé][Ss] [Kk][Oo][Nn][Tt][Rr][Aa]\\b', 'pró és kontra', 'Helyes latin kifejezés.', False, 0], ['(?iu)\\b[Rr][Áá][Kk][Öö][Vv][Ee][Tt][Kk][Ee][Zz](?P[a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ][a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ]*)', 'rá következ\\g', 'Különírás.', False, 0], ['(?iu)\\b[Tt][Áá][Jj] [Jj][Ee][Ll][Ll][Ee][Gg][Űű](?P\\w*)', 'tájjellegű\\g', 'Egybeírás.', False, 0], ['(?iu)([SsTtLlUuVv])-[Aa][Ll][Aa][Kk][Úú](?P\\w*)', '\\1 alakú\\g', 'Különírás.', False, 0], ['(?u)(\\d\\d*)-szobás(?P\\w*)', '\\1 szobás\\g', 'Különírás.', False, 0], ['(?u)(\\d\\d*)-részes(?P\\w*)', '\\1 részes\\g', 'Különírás.', False, 0], ['(?u)(?(Advent|Húsvét|Karácsony|Mindenszentek|Pünkösd|(Anyák|Apák|Halottak|Nők) [Nn]apj)(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("event_1").lower()', 'Kisbetűs kifejezés, ha nem cím. | http://helyesiras.mta.hu/helyesiras/default/akh12#144', 'wordmin(s[:m.start()],1) and word(s[m.end():],1) == word(s[m.end():],1).lower()', 0], ['(?u)foci ([Ev])[bB](?P([-][a-zA-ZöüóűőúéáíÖÜÓŰŐÚÉÁÍ][a-zA-ZöüóűőúéáíÖÜÓŰŐÚÉÁÍ]*)?)', 'foci-\\1b\\g', 'Kötőjeles kifejezés.', False, 0], ['(?u)^Kétség kívül', 'Kétségkívül', 'Egybeírás.', False, 0], ['(?iu)(?\\w*)(?![-\\w\\u2013\\u00AD])', '\\1-sark\\g', 'Földrajzi név.', False, 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat)-(?P(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("Dir_1") + "-" + m.group("cap_1").lower()', 'Kisbetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("cap_1"), r"po:noun_prs.*is:i_PLACE", False)', 0], ['(?u)(?észak|dél|kelet|nyugat|északkelet|északnyugat|délkelet|délnyugat)-(?P(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("dir_1").capitalize() + "-" + m.group("cap_1")', 'Nagybetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("cap_1"), r"po:noun_prs", False) and not morph(LOCALE,m.group("cap_1"),"is:i_PLACE", False)', 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat)-(?P(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("Dir_1").lower() + "-" + m.group("sc_1")', 'Kisbetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'wordmin(s[:m.start()],1) and word(s[m.end():],1) and not word(s[m.end():],1) == word(s[m.end():],1).capitalize() and morph(LOCALE,m.group("sc_1"), r"po:noun_prs.*is:i_PLACE", False)', 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat) (?P(?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ])+)(?![-\\w\\u2013\\u00AD])', '\\g-\\g', 'Kötőjellel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("w_1"), r"po:noun_prs")', 0], ['(?u)(?(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)-(?PTenger|Óceán|Sziget|Félsziget|Középhegység)(?![-\\w\\u2013\\u00AD])', '= m.group("cap_1") + "-" + m.group("prop_1").lower()', 'Kisbetűsen írt köznévi tag. | http://helyesiras.mta.hu/helyesiras/default/akh12#175', False, 0], ['(?u)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?P([Aa][Kk][Aa][Rr]|[Bb][Íí][Rr]|[Ff][Oo][Gg]|[Ll][Ee][Gg][Yy]|[Ll][Ee][Hh][Ee][Tt]|[Ll][Ee][Nn][Nn]|[Ll][Ee][Ss][Zz]|[Ll][Ee][Tt][Tt]|[Ss][Zz][Aa][Bb][Aa][Dd]|[Ss][Zz][Ee][Rr][Ee][Tt]|[Tt][Aa][Ll][Áá][Ll]|[Tt][Uu][Dd]|[Vv][Aa][Nn]|[Vv][Oo][Ll])\\w*)(?P( \\w+){0,}) (?P(\\w+[Nn][Ii]))(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g \\g', 'Az igekötőt nem írjuk egybe a segédigével.', 'morph(LOCALE,m.group("igenev_1"), "INFINITIVE") and morph(LOCALE,m.group("igekoto_1")+m.group("segedige_1"), r"is:[/\\w]*DEF|ds:tt")', 0], ['(?iu)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?P([Ll][Ee][Gg][Yy]|[Ll][Ee][Hh][Ee][Tt]|[Ll][Ee][Nn][Nn]|[Ll][Ee][Ss][Zz]|[Ll][Ee][Tt][Tt]|[Vv][Aa][Nn]|[Vv][Oo][Ll])\\w*)(?P( \\w+){0,}) (?P(\\w+[Vv][EeAa]))(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g \\g', 'Az igekötő a lenni + -va/-ve szerkezetben nem a létigéhez kapcsolódik.', 'morph(LOCALE,m.group("igenev_1"), "_PART") and morph(LOCALE,m.group("igekoto_1")+m.group("letige_1"), r"is:[/\\w]*DEF|ds:tt")', 0], ['(?iu)(?\\w+)(?![-\\w\\u2013\\u00AD])', '\\1d\\2\\g', 'Hadd helyesen.', 'morph(LOCALE,m.group("W_1"), r"(IMPER[_\\w]*SG_1|is:[_/\\w]*DEF_PL)") or (not wordmin(s[:m.start()],1) and morph(LOCALE,m.group("W_1"), r"is:[_/\\w]*DEF_SG_[23]"))', 0], ['(?iu)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?![-\\w\\u2013\\u00AD])', '\\1d \\2', 'Felszólító mód.', '(not wordmin(s[:m.start()],1) or wordmin(s[:m.start()],1).lower() == "ne") and morph(LOCALE,m.group(1), "st:" + m.group(1).lower() + r"\\b") and morph(LOCALE,m.group(1)+"d", r"IMPER")', 0], ['(?iu)(?\\w{4,5})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"compound") and morph(LOCALE,m.group("W_1"), "pa:")', 0], ['(?iu)(?\\w{4,})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"compound") and morph(LOCALE,m.group("W_1"), r"(?u)pa:\\w\\w\\b")', 0], ['(?iu)(?\\w{4,})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"allcompound") and morph(LOCALE,m.group("W_1"), "pa:")', 0], ['(?iu)(?[-\\w]{3,}) \\1(?![-\\w\\u2013\\u00AD])', '\\g|\\g-\\1', 'Szóismétlés vagy hiányzó kötőjel?', 'option(LOCALE,"dup0") and (not wordmin(s[:m.start()],1) or not wordmin(s[:m.start()],1).lower() in ["a", "az", "minden"]) and word(s[m.end():],1) != u"hátán" and word(s[m.end():],1) != u"hátán." and not morph(LOCALE,word(s[m.end():],1), "po:post", False)', 0], ['(?u)(?[-\\w]{3,})(?: [-–\\w„”]+)* \\1(?![-\\w\\u2013\\u00AD])', '\\g', 'Túlzott szóismétlés?', 'option(LOCALE,"dup")', 0], ['(?u)(?[-\\w]{3,})[;,:]?(?: [-–\\w„”]+[;,:]?)* \\1(?![-\\w\\u2013\\u00AD])', '\\g', 'Túlzott szóismétlés?', 'option(LOCALE,"dup2")', 0], ['(?u)(?[a-zöüóőúéáűí]+)(?![-\\w\\u2013\\u00AD])', '= m.group("low_1").capitalize()', 'Hiányzó nagy kezdőbetű?', 'paralcap.search(TEXT) and not abbrev.search(TEXT)', 0], ['(?u)((?<=[!?.] )|^)(?P[a-zöüóőúéáűí]+)(?![-\\w\\u2013\\u00AD])', '= m.group("low_1").capitalize()', 'Hiányzó nagy kezdőbetű?', 'option(LOCALE,"cap") and not abbrev.search(TEXT)', 0], ['(?u)^[-—] ', '– ', 'A gondolatjel nagykötőjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240l', 'option(LOCALE,"dash")', 0], ['(?u) [-—]([ ,;])', ' –\\1', 'A gondolatjel nagykötőjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240l', 'option(LOCALE,"dash")', 0], ['(?u)^[-–](?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ]+)', '– \\g', 'Gondolatjel szóközzel a felsorolásnál | http://helyesiras.mta.hu/helyesiras/default/akh12#259', 'option(LOCALE,"dash")', 0], ['(?u)[[][.][.][.]]', '[…]', 'Három pont | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', 'option(LOCALE,"elli")', 0], ['(?u)[.][.][.]', '…', 'Három pont | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', 'option(LOCALE,"elli")', 0], ['(?u) +([.?!,:;)”])\\b', '\\1 ', 'Felcserélt szóköz és írásjel?', False, 0], ['(?u) +([.?!,:;)”])', '\\1', 'Szóköz nélkül tapadó írásjel | http://helyesiras.mta.hu/helyesiras/default/akh12#240', False, 0], ['(?u)[:,;]([.?!,;:])(?P( |$))', '\\1\\g', 'Felesleges írásjel.', False, 0], ['(?u)\\b[.][.](?P( |$))', '.\\g|…\\g', 'Pont vagy három pont? | http://helyesiras.mta.hu/helyesiras/default/akh12#241b', False, 0], ['(?u)(\\w)(?P[?!,:;%‰‱°„”])(?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ])', '\\1\\g \\g', 'Hiányzó szóköz?', False, 0], ['(?u)(?P[a-zöüóűőúéáí])[.](?P[A-ZÖÜÓŰŐÚÉÁÍ])', '\\g. \\g', 'Hiányzó szóköz?', False, 0], ['(?u)(^|\\b|(?P[?!,:;%‰‱°„”])|[.]) {2,3}(\\b|$)', '\\1 ', 'Felesleges szóköz.', 'option(LOCALE,"spaces")', 0], ['(?u)(^|\\b|(?P[?!,:;%‰‱°„”])|[.]) {4,}(\\b|$)', '\\1 |\\1\t', 'Szóközök cseréje egy szóközre vagy tabulátorra:', 'option(LOCALE,"spaces2")', 0], ['(?iu)(\\d+)([Xx]| [Xx] )(\\d+(-\\w+)?)', '\\1×\\3|\\1\u202f·\u202f\\3', 'Szorzásjel. | http://hu.wikisource.org/wiki/A_magyar_helyesírás_szabályai/Az_írásjelek#275.', False, 0], ["(?iu)(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)['´](?P(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])*)", '\\g’\\g', 'Valódi aposztróf. | http://helyesiras.mta.hu/helyesiras/default/akh12#275', 'option(LOCALE,"apost")', 0], ["(?u)['´](\\d\\d(-\\w+)?)", '’\\1', 'Valódi aposztróf. | http://helyesiras.mta.hu/helyesiras/default/akh12#275', 'option(LOCALE,"apost")', 0], ['(?u)[)]', '', 'Felesleges zárójel?', 'option(LOCALE,"par") and not "(" in TEXT', 0], ['(?iu)[\\"“”‟„]((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„]*)[\\"“‟]', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', 'option(LOCALE,"quot")', 0], ['(?iu)[\\"“”‟]((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„]*)[\\"“”‟]', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', 'option(LOCALE,"quot")', 0], ['(?iu),,((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„_1><\']*)\'\'', '„\\1”', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)>>((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„_1><\']*)<<', '»\\1«', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)‘+((?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„’]*)’+', '„\\1”|»\\1«', 'Idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)(?[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ]+)[^\\"“”‟„’]*)»(?![-\\w\\u2013\\u00AD])', '»\\1«', 'Felcserélt belső idézőjelek. | http://helyesiras.mta.hu/helyesiras/default/akh12#240j', False, 0], ['(?iu)(?", m.group(3)).replace(u"ezeregyszáz", u"ezerszáz").replace(u"kettő", u"két")', 0], ['(?iu)(?[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])[ \xa0]){4,}(?P[a-zA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíA-ZÖÜÓŰŐÚÉÁÍ])\\b(?![-\\w\\u2013\\u00AD])', '=re.sub("[ \xa0]", "", m.group(0)) + "\\n" + re.sub("[ \xa0]", "\u202f", m.group(0))', 'Ritkítás nélkül vagy nem törő keskeny szóközökkel:', 'option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{2,3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})(?P\\d{3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})(?P\\d{3})(?P\\d{3})(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\xa0\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{2,3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?−?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(?![ \xa0][0-9])(,\\w{1,4})?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '\\g\u202f\\g\u202f\\g\xa0\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{2,3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})(?P\\d{3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})(?P\\d{3})(?P\\d{3})(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\xa0\\g\xa0\\g\xa0\\g', 'Nagy számok tagolása. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and not option(LOCALE,"thin")', 0], ['(?iu)(?\\d{2,3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?\\d{1,3})\xa0?(?P\\d{3})\xa0?(?P\\d{3})\xa0?(?P\\d{3}(,\\w+)?[%‰‱°]?(-\\w+)?)(?![-\\w\\u2013\\u00AD])', '−\\g\u202f\\g\u202f\\g\u202f\\g', 'Nagy számok tagolása nem törő keskeny szóközökkel. | http://helyesiras.mta.hu/helyesiras/default/akh12#274', 'option(LOCALE,"numpart") and option(LOCALE,"thin")', 0], ['(?iu)(?[12]\\d\\d\\d)[.] (?PJanuár|Február|Március|Április|Május|Június|Július|Augusztus|Szeptember|Október|November|December)\\b(?![-\\w\\u2013\\u00AD])', '= m.group("year_1") + ". " + m.group("Month_1").lower()', 'A hónap nevét kisbetűvel írjuk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P(|[^-–jaáeé][a-zöüóűőúéáí]*))(?![-\\w\\u2013\\u00AD])', '\\g. \\g\\g', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P[-–](?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P(|[^-–jaáeé][a-zöüóűőúéáí]*)))(?![-\\w\\u2013\\u00AD])', '\\g. \\g\\g', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d) évi(?![-\\w\\u2013\\u00AD])', '\\g. évi', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d)[-–](?P\\d\\d) évi(?![-\\w\\u2013\\u00AD])', '\\g–\\g. évi', 'Az évszám után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#296', False, 0], ['(?u)(?[12]\\d\\d\\d)[.] (?Pfolyamán|előtti?|utáni?|közötti?|nyara|nyará\\w+|tele|telé\\w+|tavasza|tavaszá\\w+|ősze|őszé\\w+)\\b(?![-\\w\\u2013\\u00AD])', '\\g \\g', 'Az évszám után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#297', False, 0], ['(?u)(?[12]\\d\\d\\d)[.] (?Pjanuár|február|március|április|május|június|július|augusztus|szeptember|október|november|december|jan[.]|febr[.]|márc[.]|ápr[.]|máj[.]|jún[.]|júl[.]|aug[.]|szept[.]|okt[.]|nov[.]|dec[.])(?P([jaáe]|é\\w)\\w*)\\b(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g', 'Az évszám után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#297', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[.]-(?P\\w*)', '\\g \\g-\\g', 'A nap után itt nem írunk pontot. | http://helyesiras.mta.hu/helyesiras/default/akh12#298', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])(?P[ ,;:?!])', '\\g \\g.\\g', 'Ha dátum, hiányzik a pont. | http://helyesiras.mta.hu/helyesiras/default/akh12#295', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[.] [Éé][Ss] (?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. és \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9]) [Éé][Ss] (?P[12]\\d|3[01]|0?[1-9])[.]? (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g. és \\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])[-–](?P[12]\\d|3[01]|0?[1-9]) (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g–\\g. \\g', 'A nap után itt pontot írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?iu)\\b(?P[Jj][Aa][Nn][Uu][Áá][Rr]|[Ff][Ee][Bb][Rr][Uu][Áá][Rr]|[Mm][Áá][Rr][Cc][Ii][Uu][Ss]|[Áá][Pp][Rr][Ii][Ll][Ii][Ss]|[Mm][Áá][Jj][Uu][Ss]|[Jj][Úú][Nn][Ii][Uu][Ss]|[Jj][Úú][Ll][Ii][Uu][Ss]|[Aa][Uu][Gg][Uu][Ss][Zz][Tt][Uu][Ss]|[Ss][Zz][Ee][Pp][Tt][Ee][Mm][Bb][Ee][Rr]|[Oo][Kk][Tt][Óó][Bb][Ee][Rr]|[Nn][Oo][Vv][Ee][Mm][Bb][Ee][Rr]|[Dd][Ee][Cc][Ee][Mm][Bb][Ee][Rr]|[Jj][Aa][Nn][.]|[Ff][Ee][Bb][Rr][.]|[Mm][Áá][Rr][Cc][.]|[Áá][Pp][Rr][.]|[Mm][Áá][Jj][.]|[Jj][Úú][Nn][.]|[Jj][Úú][Ll][.]|[Aa][Uu][Gg][.]|[Ss][Zz][Ee][Pp][Tt][.]|[Oo][Kk][Tt][.]|[Nn][Oo][Vv][.]|[Dd][Ee][Cc][.]) (?P[12]\\d|3[01]|0?[1-9])-(?P[12]\\d|3[01]|0?[1-9]). (?P[Óó][Tt][Aa]|[Ee][Ll][Őő][Tt][Tt][Ii]?|[Uu][Tt][Áá][Nn][Ii]?|[Kk][Öö][Zz][Öö][Tt][Tt][Ii]?)', '\\g \\g–\\g. \\g', 'A napok közé nagykötőjelet írunk. | http://helyesiras.mta.hu/helyesiras/default/akh12#299', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)[.](?P0?[1-9]|1[012])[.](?P[12]\\d|3[01]|0?[1-9])(?P([.]|))(?P[^\\s][^\\s]*)', '\\g. \\g.\xa0\\g\\g\\g', 'Szóköz a dátumban. | http://helyesiras.mta.hu/helyesiras/default/akh12#295', False, 0], ['(?u)(?<=\\s)\\b([14579]|10|[12][124579]|31)(-a|-á\\w+)', '= m.group(1) + m.group(2).translate(str.maketrans(u"aáoó", u"eéeő"))', 'Hibás dátum?', 'stem(LOCALE,"2" + m.group(2)) == ["2"]', 0], ['(?u)(?<=\\s)\\b([2368]|[23]0|[12][368])(-j?e|-j?é\\w+)', '= m.group(1) + m.group(2).replace("j", "").replace("e", "a").replace("haz", "hoz").replace(u"é", u"á").replace(u"ő", u"ó")', 'Hibás dátum?', 'stem(LOCALE,"1" + m.group(2)) == ["1"]', 0], ['(?u)\\bstb[.], stb[.]', 'stb. stb.|stb.; stb.', 'Két stb. közé nem teszünk vesszőt.', False, 0], ['(?u)(?[a-zöüóűőúéáí]))(?![-\\w\\u2013\\u00AD])', '\\1', 'Nem ponttal írjuk ezt a rövidítést.', False, 0], ['(?u)(?[Aa][Ll][Bb][Áá][Nn]|[Aa][Mm][Ee][Rr][Ii][Kk][Aa][Ii]|[Aa][Nn][Gg][Oo][Ll]|[Bb][Ee][Ll][Gg][Aa]|[Bb][Oo][Ll][Gg][Áá][Rr]|[Bb][Oo][Ss][Nn][Yy][Áá][Kk]|[Bb][Rr][Ii][Tt]|[Cc][Ii][Pp][Rr][Uu][Ss][Ii]|[Cc][Ss][Ee][Hh]|[Dd][Áá][Nn]|[Éé][Ss][Zz][Tt]|[Ff][Ii][Nn][Nn]|[Ff][Rr][Aa][Nn][Cc][Ii][Aa]|[Gg][Öö][Rr][Öö][Gg]|[Hh][Oo][Ll][Ll][Aa][Nn][Dd]|[Hh][Oo][Rr][Vv][Áá][Tt]|[Íí][Rr]|[Jj][Aa][Pp][Áá][Nn]|[Kk][Íí][Nn][Aa][Ii]|[Ll][Ee][Nn][Gg][Yy][Ee][Ll]|[Ll][Ee][Tt][Tt]|[Ll][Ii][Tt][Vv][Áá][Nn]|[Mm][Aa][Cc][Ee][Dd][Óó][Nn]|[Mm][Aa][Gg][Yy][Aa][Rr]|[Mm][Áá][Ll][Tt][Aa][Ii]|[Nn][Éé][Mm][Ee][Tt]|[Nn][Oo][Rr][Vv][Éé][Gg]|[Oo][Ll][Aa][Ss][Zz]|[Oo][Rr][Oo][Ss][Zz]|[Oo][Ss][Zz][Tt][Rr][Áá][Kk]|[Pp][Oo][Rr][Tt][Uu][Gg][Áá][Ll]|[Rr][Oo][Mm][Áá][Nn]|[Ss][Pp][Aa][Nn][Yy][Oo][Ll]|[Ss][Vv][Áá][Jj][Cc][Ii]|[Ss][Vv][Éé][Dd]|[Ss][Zz][Ee][Rr][Bb]|[Ss][Zz][Ll][Oo][Vv][Áá][Kk]|[Ss][Zz][Ll][Oo][Vv][Éé][Nn]|[Tt][Öö][Rr][Öö][Kk]|[Uu][Kk][Rr][Áá][Nn])-(?P[Aa][Ll][Bb][Áá][Nn]|[Aa][Mm][Ee][Rr][Ii][Kk][Aa][Ii]|[Aa][Nn][Gg][Oo][Ll]|[Bb][Ee][Ll][Gg][Aa]|[Bb][Oo][Ll][Gg][Áá][Rr]|[Bb][Oo][Ss][Nn][Yy][Áá][Kk]|[Bb][Rr][Ii][Tt]|[Cc][Ii][Pp][Rr][Uu][Ss][Ii]|[Cc][Ss][Ee][Hh]|[Dd][Áá][Nn]|[Éé][Ss][Zz][Tt]|[Ff][Ii][Nn][Nn]|[Ff][Rr][Aa][Nn][Cc][Ii][Aa]|[Gg][Öö][Rr][Öö][Gg]|[Hh][Oo][Ll][Ll][Aa][Nn][Dd]|[Hh][Oo][Rr][Vv][Áá][Tt]|[Íí][Rr]|[Jj][Aa][Pp][Áá][Nn]|[Kk][Íí][Nn][Aa][Ii]|[Ll][Ee][Nn][Gg][Yy][Ee][Ll]|[Ll][Ee][Tt][Tt]|[Ll][Ii][Tt][Vv][Áá][Nn]|[Mm][Aa][Cc][Ee][Dd][Óó][Nn]|[Mm][Aa][Gg][Yy][Aa][Rr]|[Mm][Áá][Ll][Tt][Aa][Ii]|[Nn][Éé][Mm][Ee][Tt]|[Nn][Oo][Rr][Vv][Éé][Gg]|[Oo][Ll][Aa][Ss][Zz]|[Oo][Rr][Oo][Ss][Zz]|[Oo][Ss][Zz][Tt][Rr][Áá][Kk]|[Pp][Oo][Rr][Tt][Uu][Gg][Áá][Ll]|[Rr][Oo][Mm][Áá][Nn]|[Ss][Pp][Aa][Nn][Yy][Oo][Ll]|[Ss][Vv][Áá][Jj][Cc][Ii]|[Ss][Vv][Éé][Dd]|[Ss][Zz][Ee][Rr][Bb]|[Ss][Zz][Ll][Oo][Vv][Áá][Kk]|[Ss][Zz][Ll][Oo][Vv][Éé][Nn]|[Tt][Öö][Rr][Öö][Kk]|[Uu][Kk][Rr][Áá][Nn])\\b', '\\g–\\g', 'Népnevek közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P(1\\d\\d[1-9]|1\\d[1-9]\\d|20\\d[1-9]|20[1-9]\\d))-(?P[12]\\d\\d\\d)\\b ', '\\g–\\g ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)-(?P(1\\d\\d[1-9]|1\\d[1-9]\\d|20\\d[1-9]|20[1-9]\\d))\\b ', '\\g–\\g ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)\\b(?P[12]\\d\\d\\d)-(\\d\\d)\\b ', '\\g–\\2 ', 'Évszámok közé nagykötőjelet teszünk.', False, 0], ['(?u)([A-ZÖÜÓŰŐÚÉÁÍ]\\w*)-(\\d+(-\\w+)?)', '\\1–\\2', 'Típusnév és -szám közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#294', False, 0], ['(?u)pp[.] (\\d+)-(\\d+)[.]', 'pp. \\1–\\2.', 'Oldalszámok közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#264c', False, 0], ['(?u)(\\d+)-(\\d+)[.] (o[.]|oldal\\w*)', '\\1–\\2. \\3', 'Oldalszámok közé nagykötőjelet teszünk. | http://helyesiras.mta.hu/helyesiras/default/akh12#264c', False, 0], ['(?u) (u[.]|utca|út|tér) (\\d\\d*)-(\\d\\d*)[.]', ' \\1 \\2–\\3.', 'Nagykötőjel a házszámban. | http://hu.wikisource.org/wiki/A_magyar_helyesírás_szabályai/Egyéb_tudnivalók#298.', False, 0], ['(?iu)(?\\g<1>", re.sub(r"([cdgklptv]..|[cgsz][syz]..|dzs..|(?<=[nr])[sz]..)$", r"@\\g<1>", m.group(0))).replace("xel", "xszel")', 'Névszóként -val/-vel toldalékkal. | http://helyesiras.mta.hu/helyesiras/default/akh12#42', 'wordmin(s[:m.start()],1).lower() == "a" and morph(LOCALE,m.group(0), r"po:vrb\\b", False) and morph(LOCALE,m.group(0)[:-2], r"po:noun\\b")', 0], ['(?u)(?[aáeéiíoóöőuúüűAÁEÉIÍOÓÖŐUÚÜŰ]\\w*)', 'az \\g', 'Hibás névelő?', 'not re.match(r"(?i)i(ii?|[vx])$|Unicode$|Unix\\w*$", m.group("aword_1")) and spell(LOCALE,m.group("aword_1"))', 0], ['(?u)(?[aA]) (?P[aáeéiíoóöőuúüűAÁEÉIÍOÓÖŐUÚÜŰ]\\w*)', '\\gz \\g|\\g', 'Hibás vagy felesleges névelő?', 'wordmin(s[:m.start()],1) and not re.match(r"(?i)i(ii?|[vx])$|Unicode$|Unix\\w*$", m.group("aword_1")) and spell(LOCALE,m.group("aword_1"))', 0], ['(?iu)(?\\d+|\\d+,\\d+) [Gg][Rr][.]?-[Mm][Aa][Ll](?![-\\w\\u2013\\u00AD])', '\\g g-mal', 'A grammal rövidítése g-mal | http://helyesiras.mta.hu/helyesiras/default/akh12#288', False, 0], ['(?u) A vitamin(?P\\w*)', ' A-vitamin\\g', 'Kötőjeles név.', False, 0], ['(?u)(?\\w*)(?![-\\w\\u2013\\u00AD])', '\\1-vitamin\\g', 'Kötőjeles név.', False, 0], ['(?u)(?\\w*)', 'nyíltszívű\\g', 'Egybeírás.', False, 0], ['(?iu)\\b[Jj][Óó] [Ss][Zz][Áá][Nn][Dd][Éé][Kk][Úú](?P\\w*)', 'jószándékú\\g', 'Egybeírás.', False, 0], ['(?iu)[Kk][Öö][Zz][Öö][Ss] [Ll][Óó][Nn][Aa][Kk] [Tt][Úú][Rr][Óó][Ss]', 'közös lónak túros', 'Helyes kifejezés.', False, 0], ['(?iu)\\b[Ll][Oo][Bb][Oo][Tt] [Vv][Ee][Tt](?P\\w*)\\b', 'lobbot vet\\g', 'Helyes kifejezés.', False, 0], ['(?iu)\\b[Nn][Ee][Jj][Ll][Oo][Nn] [Hh][Aa][Rr][Ii][Ss][Nn][Yy][Aa]\\b', 'nejlonharisnya', 'Egybeírás.', False, 0], ['(?iu)\\b[Oo][Dd][Aa]-[Vv][Ii][Ss][Ss][Zz][Aa](?P[a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ][a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ]*)', 'oda-vissza \\g', 'Különírás.', False, 0], ['(?iu)\\b[Pp][Rr][Oo] [Éé][Ss] [Kk][Oo][Nn][Tt][Rr][Aa]\\b', 'pró és kontra', 'Helyes latin kifejezés.', False, 0], ['(?iu)\\b[Rr][Áá][Kk][Öö][Vv][Ee][Tt][Kk][Ee][Zz](?P[a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ][a-zA-ZA-ZÖöÜüÓóŰűŐőÚúÉéÁáÍíÖÜÓŰŐÚÉÁÍ]*)', 'rá következ\\g', 'Különírás.', False, 0], ['(?iu)\\b[Tt][Áá][Jj] [Jj][Ee][Ll][Ll][Ee][Gg][Űű](?P\\w*)', 'tájjellegű\\g', 'Egybeírás.', False, 0], ['(?iu)([SsTtLlUuVv])-[Aa][Ll][Aa][Kk][Úú](?P\\w*)', '\\1 alakú\\g', 'Különírás.', False, 0], ['(?u)(\\d\\d*)-szobás(?P\\w*)', '\\1 szobás\\g', 'Különírás.', False, 0], ['(?u)(\\d\\d*)-részes(?P\\w*)', '\\1 részes\\g', 'Különírás.', False, 0], ['(?u)(?(Advent|Húsvét|Karácsony|Mindenszentek|Pünkösd|(Anyák|Apák|Halottak|Nők) [Nn]apj)(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("event_1").lower()', 'Kisbetűs kifejezés, ha nem cím. | http://helyesiras.mta.hu/helyesiras/default/akh12#144', 'wordmin(s[:m.start()],1) and word(s[m.end():],1) == word(s[m.end():],1).lower()', 0], ['(?u)foci ([Ev])[bB](?P([-][a-zA-ZöüóűőúéáíÖÜÓŰŐÚÉÁÍ][a-zA-ZöüóűőúéáíÖÜÓŰŐÚÉÁÍ]*)?)', 'foci-\\1b\\g', 'Kötőjeles kifejezés.', False, 0], ['(?u)^Kétség kívül', 'Kétségkívül', 'Egybeírás.', False, 0], ['(?iu)(?\\w*)(?![-\\w\\u2013\\u00AD])', '\\1-sark\\g', 'Földrajzi név.', False, 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat)-(?P(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("Dir_1") + "-" + m.group("cap_1").lower()', 'Kisbetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("cap_1"), r"po:noun_prs.*is:i_PLACE", False)', 0], ['(?u)(?észak|dél|kelet|nyugat|északkelet|északnyugat|délkelet|délnyugat)-(?P(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("dir_1").capitalize() + "-" + m.group("cap_1")', 'Nagybetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("cap_1"), r"po:noun_prs", False) and not morph(LOCALE,m.group("cap_1"),"is:i_PLACE", False)', 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat)-(?P(?P[a-zöüóűőúéáí])+)(?![-\\w\\u2013\\u00AD])', '= m.group("Dir_1").lower() + "-" + m.group("sc_1")', 'Kisbetűvel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'wordmin(s[:m.start()],1) and word(s[m.end():],1) and not word(s[m.end():],1) == word(s[m.end():],1).capitalize() and morph(LOCALE,m.group("sc_1"), r"po:noun_prs.*is:i_PLACE", False)', 0], ['(?u)(?Észak|Dél|Kelet|Nyugat|Északkelet|Északnyugat|Délkelet|Délnyugat) (?P(?P[a-zöüóűőúéáíA-ZÖÜÓŰŐÚÉÁÍ])+)(?![-\\w\\u2013\\u00AD])', '\\g-\\g', 'Kötőjellel írt földrajzi név. | http://helyesiras.mta.hu/helyesiras/default/akh12#178', 'morph(LOCALE,m.group("w_1"), r"po:noun_prs")', 0], ['(?u)(?(?P[A-ZÖÜÓŰŐÚÉÁÍ])(?P[a-zöüóűőúéáí])+)-(?PTenger|Óceán|Sziget|Félsziget|Középhegység)(?![-\\w\\u2013\\u00AD])', '= m.group("cap_1") + "-" + m.group("prop_1").lower()', 'Kisbetűsen írt köznévi tag. | http://helyesiras.mta.hu/helyesiras/default/akh12#175', False, 0], ['(?u)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?P([Aa][Kk][Aa][Rr]|[Bb][Íí][Rr]|[Ff][Oo][Gg]|[Ll][Ee][Gg][Yy]|[Ll][Ee][Hh][Ee][Tt]|[Ll][Ee][Nn][Nn]|[Ll][Ee][Ss][Zz]|[Ll][Ee][Tt][Tt]|[Ss][Zz][Aa][Bb][Aa][Dd]|[Ss][Zz][Ee][Rr][Ee][Tt]|[Tt][Aa][Ll][Áá][Ll]|[Tt][Uu][Dd]|[Vv][Aa][Nn]|[Vv][Oo][Ll])\\w*)(?P( \\w+){0,}) (?P(\\w+[Nn][Ii]))(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g \\g', 'Az igekötőt nem írjuk egybe a segédigével.', 'morph(LOCALE,m.group("igenev_1"), "INFINITIVE") and morph(LOCALE,m.group("igekoto_1")+m.group("segedige_1"), r"is:[/\\w]*DEF|ds:tt")', 0], ['(?iu)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?P([Ll][Ee][Gg][Yy]|[Ll][Ee][Hh][Ee][Tt]|[Ll][Ee][Nn][Nn]|[Ll][Ee][Ss][Zz]|[Ll][Ee][Tt][Tt]|[Vv][Aa][Nn]|[Vv][Oo][Ll])\\w*)(?P( \\w+){0,}) (?P(\\w+[Vv][EeAa]))(?![-\\w\\u2013\\u00AD])', '\\g \\g\\g \\g', 'Az igekötő a lenni + -va/-ve szerkezetben nem a létigéhez kapcsolódik.', 'morph(LOCALE,m.group("igenev_1"), "_PART") and morph(LOCALE,m.group("igekoto_1")+m.group("letige_1"), r"is:[/\\w]*DEF|ds:tt")', 0], ['(?iu)(?\\w+)(?![-\\w\\u2013\\u00AD])', '\\1d\\2\\g', 'Hadd helyesen.', 'morph(LOCALE,m.group("W_1"), r"(IMPER[_\\w]*SG_1|is:[_/\\w]*DEF_PL)") or (not wordmin(s[:m.start()],1) and morph(LOCALE,m.group("W_1"), r"is:[_/\\w]*DEF_SG_[23]"))', 0], ['(?iu)(?[Aa][Bb][Bb][Aa]|[Aa][Gg][Yy][Oo][Nn]|[Aa][Ll][Áá]|[Áá][Ll][Tt][Aa][Ll]|[Áá][Tt]|[Bb][Ee]|[Bb][Ee][Ll][Ee]|[Bb][Ee][Nn][Nn]|[Ee][Gg][Yy][Bb][Ee]|[Ee][Gg][Yy][Üü][Tt][Tt]|[Ee][Ll]|[Ee][Ll][Ll][Ee][Nn]|[Ee][Ll][Őő]|[Ee][Ll][Őő][Rr][Ee]|[Ff][Ee][Ll]|[Ff][Öö][Ll]|[Ff][Éé][Ll][Bb][Ee]|[Ff][Éé][Ll][Rr][Ee]|[Ff][Ee][Ll][Üü][Ll]|[Ff][Öö][Ll][Üü][Ll]|[Ff][Ee][Nn][Nn]|[Ff][Öö][Nn][Nn]|[Hh][Áá][Tt][Rr][Aa]|[Hh][Aa][Zz][Aa]|[Hh][Ee][Ll][Yy][Rr][Ee]|[Hh][Oo][Zz][Zz][Áá]|[Ii][Dd][Ee]|[Jj][Óó][Vv][Áá]|[Kk][Ee][Rr][Ee][Ss][Zz][Tt][Üü][Ll]|[Kk][Ee][Tt][Tt][Éé]|[Kk][Ii]|[Kk][Öö][Ll][Cc][Ss][Öö][Nn]|[Kk][Öö][Rr][Bb][Ee]|[Kk][Öö][Rr][Üü][Ll]|[Kk][Öö][Zz][Bb][Ee]|[Kk][Öö][Zz][Rr][Ee]|[Kk][Üü][Ll][Öö][Nn]|[Ll][Ee]|[Mm][Ee][Gg]|[Mm][Ee][Ll][Ll][Éé]|[Nn][Ee][Kk][Ii]|[Oo][Dd][Aa]|[Öö][Ss][Ss][Zz][Ee]|[Rr][Áá]|[Rr][Aa][Jj][Tt][Aa]|[Ss][Zz][Éé][Jj][Jj][Ee][Ll]|[Ss][Zz][Ee][Mm][Bb][Ee]|[Ss][Zz][Ee][Rr][Tt][Ee]|[Ss][Zz][Éé][Tt]|[Tt][Ee][Ll][Ee]|[Tt][Oo][Vv][Aa]|[Tt][Oo][Vv][Áá][Bb][Bb]|[Tt][Úú][Ll]|[Úú][Jj][Jj][Áá]|[Úú][Jj][Rr][Aa]|[Uu][Tt][Áá][Nn][Aa]|[Vv][Éé][Gg][Bb][Ee]|[Vv][Éé][Gg][Ii][Gg]|[Vv][Ii][Ss][Ss][Zz][Aa])(?![-\\w\\u2013\\u00AD])', '\\1d \\2', 'Felszólító mód.', '(not wordmin(s[:m.start()],1) or wordmin(s[:m.start()],1).lower() == "ne") and morph(LOCALE,m.group(1), "st:" + m.group(1).lower() + r"\\b") and morph(LOCALE,m.group(1)+"d", r"IMPER")', 0], ['(?iu)(?\\w{4,5})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"compound") and morph(LOCALE,m.group("W_1"), "pa:")', 0], ['(?iu)(?\\w{4,})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"compound") and morph(LOCALE,m.group("W_1"), r"(?u)pa:\\w\\w\\b")', 0], ['(?iu)(?\\w{4,})(?![-\\w\\u2013\\u00AD])', '=suggest(LOCALE,m.group("W_1"))', 'Biztos, hogy helyes összetett szó?', 'option(LOCALE,"allcompound") and morph(LOCALE,m.group("W_1"), "pa:")', 0], ['(?iu)(?[-\\w]{3,}) \\1(?![-\\w\\u2013\\u00AD])', '\\g|\\g-\\1', 'Szóismétlés vagy hiányzó kötőjel?', 'option(LOCALE,"dup0") and (not wordmin(s[:m.start()],1) or not wordmin(s[:m.start()],1).lower() in ["a", "az", "minden"]) and word(s[m.end():],1) != u"hátán" and word(s[m.end():],1) != u"hátán." and not morph(LOCALE,word(s[m.end():],1), "po:post", False)', 0], ['(?u)(?[-\\w]{3,})(?: [-–\\w„”]+)* \\1(?![-\\w\\u2013\\u00AD])', '\\g', 'Túlzott szóismétlés?', 'option(LOCALE,"dup")', 0], ['(?u)(?[-\\w]{3,})[;,:]?(?: [-–\\w„”]+[;,:]?)* \\1(?![-\\w\\u2013\\u00AD])', '\\g', 'Túlzott szóismétlés?', 'option(LOCALE,"dup2")', 0], ['(?u)(?