class_docstr: Lexer for World of Warcraft TOC files.
  
  .. versionadded:: 2.14
code: def analyse_text(text):
      # at time of writing, this file suffix conflict's with one of Tex's in
      # markup.py. Tex's anaylse_text() appears to be definitive (binary) and does not
      # share any likeness to WoW TOCs, which means we wont have to compete with it by
      # abitrary increments in score.
  
      result = 0
  
      # while not required, an almost certain marker of WoW TOC's is the interface tag
      # if this tag is omitted, players will need to opt-in to loading the addon with
      # an options change ("Load out of date addons"). the value is also standardized:
      # `<major><minor><patch>`, with minor and patch being two-digit zero-padded.
      interface_pattern = _create_tag_line_pattern(
          r"(Interface)", ignore_case=True
      )
      match = re.search(interface_pattern, text)
      if match and re.match(r"(\d+)(\d{2})(\d{2})", match.group(7)):
          result += 0.8
  
      casefolded = text.casefold()
      # Lua file listing is good marker too, but probably conflicts with many other
      # lexers
      if ".lua" in casefolded:
          result += 0.1
      # ditto for XML files, but they're less used in WoW TOCs
      if ".xml" in casefolded:
          result += 0.05
  
      return result
  
file_path: catboost/contrib/python/Pygments/py3/pygments/lexers/wowtoc.py
imports: import re
  from pygments.lexer import RegexLexer, bygroups
  from pygments.token import Comment, Name, Text, Punctuation, String, Keyword
label_desc: Use image node_id 1 for calling the WoWTocLexer obj's underlying member method code with example usage: obj.analyse_text(text) and returns: result