def text_till(self, strings, keep_index=False):
        if isinstance(strings, str):
            strings = [strings]

        original_index = self.index

        text = ""
        matched_string = ""

        while self.more:
            test_against = self.characters(len(max(strings, key=len)))
            for string in strings:
                if string.startswith("^"):
                    if test_against[0] in (" ", "\t", "\n", ")", "(") and test_against[1:].startswith(string[1:]):
                        matched_string = string
                        break
                if test_against.startswith(string):
                    matched_string = string
                    break

            if matched_string:
                break

            text += self.pop()

        self += 1

        if keep_index:
            self.index = original_index

        return (text, matched_string)
Deletes a single contribution
dataset/ETHPy150Open timothycrosley/jiphy/jiphy/parser.py/Parser.text_till--crossover with--dataset/ETHPy150Open ExCiteS/geokey/geokey/contributions/views/observations.py/SingleAllContributionAPIView.delete