Browse Source

I think this works.

tags/v0.1^2
Ben Kurtovic 12 years ago
parent
commit
2ceddc2e64
1 changed files with 7 additions and 9 deletions
  1. +7
    -9
      earwigbot/commands/dictionary.py

+ 7
- 9
earwigbot/commands/dictionary.py View File

@@ -107,16 +107,14 @@ class Dictionary(Command):
}
blocks = "=" * (level + 1)
defs = []
for part, fullname in parts_of_speech.iteritems():
regexes = [
"{0}\s*{1}\s*{0}".format(blocks, fullname),
blocks + "\s*\{\{" + fullname + "\}\}\s*" + blocks,
blocks + "\s*\{\{" + fullname.lower() + "\}\}\s*" + blocks,
]
for regex in regexes:
for part, basename in parts_of_speech.iteritems():
fullnames = [fullname, "\{\{" + fullname + "\}\}",
"\{\{" + fullname.lower() + "\}\}"]
for fullname in fullnames:
regex = blocks + "\s*\{\{" + fullname + "\}\}\s*" + blocks
if re.search(regex, section):
regex = "{0}\s*{1}\s*{0}(.*?)(?:(?:{0})|\Z)"
regex = regex.format(blocks, fullname)
regex = blocks + "\s*" + fullname
regex += "\s*{0}(.*?)(?:(?:{0})|\Z)".format(blocks)
bodies = re.findall(regex, section, re.DOTALL)
if bodies:
for body in bodies:


Loading…
Cancel
Save