monty.re module — monty 2021.8.17 documentation

# monty.re module

Helpful regex based functions. E.g., grepping.

regrep(filename, patterns, reverse=False, terminate_on_match=False, postprocess=<class 'str'>)

  A powerful regular expression version of grep.

  Parameters

    - filename (str) – Filename to grep.

    - patterns (dict) – A dict of patterns, e.g., {“energy”: r”energy\(sigma->0\)\s+=\s+([\d\-\.]+)”}.

    - reverse (bool) – Read files in reverse. Defaults to false. Useful for large files, especially when used with terminate_on_match.

    - terminate_on_match (bool) – Whether to terminate when there is at least one match in each key in pattern.

    - postprocess (callable) – A post processing function to convert all matches. Defaults to str, i.e., no change.

  Returns

    > {key1: [[[matches…], lineno], [[matches…], lineno],

    >   [[matches…], lineno], …],

    > key2: …}

    For reverse reads, the lineno is given as a -ve number. Please note that 0-based indexing is used.

  Return type

    A dict of the following form