class_docstr: Access a digital form of Zoëga's dictionary.
docstr: Perform match of a lemma against headwords. This is case sensitive.
  If more than one match, then return the concatenated entries. For example:
  
  >>> from cltk.lexicon.non import OldNorseZoegaLexicon
  >>> onzl = OldNorseZoegaLexicon(interactive=False)
  >>> onzl.lookup("sonr")
  '(gen. sonar, dat. syni and søni; pl. synir, sønir; ace. sonu and syni), m. son.'
code: def lookup(self, lemma: str) -> str:
      """Perform match of a lemma against headwords. This is case sensitive.
      If more than one match, then return the concatenated entries. For example:
  
      >>> from cltk.lexicon.non import OldNorseZoegaLexicon
      >>> onzl = OldNorseZoegaLexicon(interactive=False)
      >>> onzl.lookup("sonr")
      '(gen. sonar, dat. syni and søni; pl. synir, sønir; ace. sonu and syni), m. son.'
      """
      if not self.entries:
          raise CLTKException(
              "No dictionary entries found in the .yaml file. This should never happen."
          )
  
      if regex.match(r"^[0-9\.\?,\:;\!\<\>\-]*$", lemma) is not None:
          return ""
  
      keys = self.entries.keys()
      matches = [
          key for key in keys if regex.match(rf"^{lemma}[0-9]?$", key)
      ]
      n_matches = len(matches)
      if n_matches > 1:
          return "\n".join([self.entries[key] for key in matches])
      elif n_matches == 1:
          return self.entries[matches[0]]
      else:
          return ""
  
file_path: cltk/src/cltk/lexicon/non.py
imports: import regex
  import yaml
  from cltk.core.exceptions import CLTKException
  from cltk.data.fetch import FetchCorpus
  from cltk.utils.file_operations import make_cltk_path
  from cltk.utils.utils import query_yes_no
label_desc: Use image node_id 2 for calling the OldNorseZoegaLexicon obj's underlying member method code with example usage: obj.lookup(lemma) and returns: str, str, self, str