Sort by Word Key Match

Example

>>> # TEST PREPARATION
>>> import sys
>>> from io import StringIO
>>> from techminer2.thesaurus.organizations import CreateThesaurus, SortByWordKeyMatch
>>> # Redirecting stderr to avoid messages
>>> original_stderr = sys.stderr
>>> sys.stderr = StringIO()
>>> # Create thesaurus
>>> CreateThesaurus(root_directory="example/", quiet=True).run()
>>> # Create and run the sorter
>>> sorter = (
...     SortByWordKeyMatch()
...     #
...     # THESAURUS:
...     .having_pattern("Bank")
...     #
...     # DATABASE:
...     .where_root_directory_is("example/")
... )
>>> sorter.run()
>>> # Capture and print stderr output
>>> output = sys.stderr.getvalue()
>>> sys.stderr = original_stderr
>>> print(output)
Reducing thesaurus keys
  File : example/thesaurus/organizations.the.txt
  Keys reduced from 90 to 90
  Keys reduction completed successfully

Sorting thesaurus file by word match
  File : example/thesaurus/organizations.the.txt
  Word : Bank
  2 matching keys found
  Thesaurus sorting by word match completed successfully

Printing thesaurus header
  File : example/thesaurus/organizations.the.txt

    Fed Reserv Bank of Chicago (USA)
      Federal Reserve Bank of Chicago, Chicago, IL, United States; Federal Rese...
    Fed Reserv Bank of Philadelphia (USA)
      Federal Reserve Bank of Philadelphia, Philadelphia, PA, United States; Fe...
    [UKN] Brussels, Belgium (BEL)
      Brussels, Belgium
    [UKN] CESifo, Poschingerstr. 5, Munich, 81679, Germany (DEU)
      CESifo, Poschingerstr. 5, Munich, 81679, Germany
    [UKN] FinTech HK, Hong Kong (HKG)
      FinTech HK, Hong Kong
    [UKN] Hochschule für Wirtschaft Fribourg, Switzerland (CHE)
      Hochschule für Wirtschaft Fribourg, Switzerland
    [UKN] Information Technol, Univeril, Germany (DEU)
      Information Technology, Univeril, Germany
    [UKN] Johns Hopkins SAIS, Washington, DC, United States (USA)
      Johns Hopkins SAIS, Washington, DC, United States