import re


def find(string, left, right):
    """Return text between two strings. Supports regular expressions."""
    match = re.search(left + '(.*?)' + right, string)

    if match is None:
        return None

    # The text must not be empty.
    match = match.group(1).strip()
    return match if match else None