正規表現 Part7
■ このスレッドは過去ログ倉庫に格納されています
0433デフォルトの名無しさん
2010/09/09(木) 08:05:34$a='a;b;c;'; $a=~s/.*?(;b|)//; print $a."\n";
$a='a;b;c;'; $a=~s/.*?(;b)//; print $a."\n";
$a='a;b;c;'; $a=~s/(.*?;b|)//; print $a."\n";
を実行すると、
a;b;c;
;c;
;c;
となりますが、何故最初の表現がこうなってしまうのか解りません
最短一致表現の直後に (〜|) がある場合、空の部分の方が先に処理されてしまうのでしょうか??
■ このスレッドは過去ログ倉庫に格納されています