def get_fields_from_string(self, string):
        """ Gets field data from an incoming string.

        Parses through the string using the following RST-derived
        pattern::

            0 | * Field
            1 |     VALUE
            2 |     MORE VALUE

        """
        data = {}
        field_name = ''
        human_names = {}
        value = ''
        if not string:
            return data, human_names
        lines = string.split('\n')
        for idx, line in enumerate(lines):
            if line.startswith('*'):
                if value:  # If so, we just need to store previous loop data
                    self.set_data_value(data, field_name, value)
                    value = ''
                raw_field_name = re.match('^\* (.*\(.*?\)):$', line).group(1)
                if raw_field_name in '(':
                    # This field name's real name doesn't match the field ID
                    match = re.match(
                        '(.*) \(([^)]+)\)',
                        raw_field_name
                    )
                    field_name = match.group(2)
                    human_names[field_name] = match.group(1)
                else:
                    field_name = raw_field_name.replace(' ', '_')
            elif field_name:
                value = value + '\n' + line.strip()
        if value:
            self.set_data_value(data, field_name, value)

        return data, human_names
dataset/ETHPy150Open coddingtonbear/jirafs/jirafs/jirafieldmanager.py/JiraFieldManager.get_fields_from_string/swapped operands of `in`