geekpradd / PyDictionary

PyDictionary is a Dictionary Module for Python 2/3 to get meanings, translations, synonyms and antonyms of words
https://pypi.python.org/pypi/PyDictionary
MIT License
274 stars 65 forks source link

Parenthesis issue #7

Open JenPrendki opened 8 years ago

JenPrendki commented 8 years ago

Hi,

It seems that there is issue with parenthesis handling.

import PyDictionary mydict = PyDictionary.PyDictionary() mydict.meaning("scholar")

... gets me:
{u'Noun': ['a learned person (especially in the humanities', 'someone (especially a child', 'as from a teacher', 'a student who holds a scholarship']}

To avoid the issue, I changed: for x in re.findall(r'\((.*?)\)', reg): (line 135 in core.py)
by: for x in re.findall(r'>\s\((.*?)\)\s<', reg):

Now getting:

{u'Noun': ['a learned person (especially in the humanities); someone who by long study has gained mastery in one or more disciplines', 'someone (especially a child) who learns (as from a teacher) or takes up knowledge or beliefs', 'a student who holds a scholarship']}

as expected.

Thanks, Jennifer

chynes2 commented 6 years ago

This is really awesome! Quick and easy fix to prevent the parser from cutting off close parens. FYI It was on line 130 in my version of core.py. Thanks for this!

b1tninja commented 3 years ago

https://github.com/geekpradd/PyDictionary/pull/40 fixed here

ahollist commented 3 years ago

Are there any plans to merge the fix shown here?