Я намагаюся витягувати LHS і RHS лінійного рівняння, використовуючи відповідність RegEx у Pththon.
exp="+1-3=x+2";
parts = re.search("(.*?)=(.*?)", exp);
left = parts.group(1);
right = parts.group(2);
хоча вартість left
правильно схоплено, значення right
пусто.
Чи є щось, що я роблю неправильно? Потрібно сказати, що я новачок у Python.
Дякую.
Відповіді:
4 для відповіді № 1Зробіть праву сторону жадібною, видаливши знак питання:
parts = re.search("(.*?)=(.*)", exp);
Інакше відповідність зупиняється відразу після =
.
Крім того, використовуйте $
прив'язати до кінця рядка.
Нарешті, варто зауважити, що ви не потребуєте регулярного вираження тут:
left, _, right = exp.partition("=")