| import re | |
| def transform_text(original_text): | |
| # Extract the base question | |
| base_question_match = re.search(r'For which of these two scenarios (.+)? Scenario 1', original_text) | |
| if base_question_match: | |
| base_question = base_question_match.group(1) | |
| else: | |
| return "Could not find base question." | |
| # Remove any trailing 'does' or 'do' from the base question to avoid duplication | |
| base_question = re.sub(r'^(does|do)\s+', '', base_question) | |
| # Split the original text into parts, then extract the scenarios | |
| # Exclude the answer choices and the "Answer:" line at the end | |
| parts = original_text.split("Scenario ") | |
| scenarios = [part.split("|")[1].split("\n")[0].strip() for part in parts[1:]] | |
| # Prepare the transformed text | |
| transformed_text = "" | |
| for scenario in scenarios: | |
| transformed_text += f"Does {base_question}\n{scenario}\nA. No\nB. Yes\nAnswer:\n\n" | |
| return transformed_text |