2

Ptython で RegEx マッチングを使用して線形方程式の LHS と RHS を抽出しようとしています。

exp="+1-3=x+2";
parts = re.search("(.*?)=(.*?)", exp);
left = parts.group(1);
right = parts.group(2);

の値leftは正しくキャプチャされますが、 の値rightは空です。

私が間違っていることはありますか?言うまでもなく、私は Python は初めてです。

ありがとう。

4

1 に答える 1

4

疑問符を削除して、右側を貪欲にします。

parts = re.search("(.*?)=(.*)", exp);

それ以外の場合、マッチングは の直後で停止し=ます。

$または、文字列の末尾に固定するために使用します。

最後に、ここでは正規表現は実際には必要ないことに注意してください。

left, _, right = exp.partition('=')
于 2013-03-21T22:21:53.583 に答える