トップページに戻る    次の正規表現パズルへ    前の正規表現パズルへ

5-8 行単位での整形その1

正規表現パズル

置換を使って、
A=数値,B=数値,C=数値,D=数値
が順不同で並んでいるデータを
行ごとに、
A=数値,B=数値,C=数値,D=数値
の順に整形する。

置換前


置換後


対象データ

A=91,B=6,C=31,D=1
A=82,B=5,D=22,C=9
A=73,C=4,B=13,D=8
A=64,C=3,D=94,B=7
A=55,D=2,B=85,C=6
A=46,D=1,C=76,B=5
B=37,A=9,C=67,D=4
B=28,A=8,D=58,C=3
B=19,C=7,A=49,D=2
B=91,C=6,D=31,A=1
B=82,D=5,A=22,C=9
B=73,D=4,C=13,A=8


正規表現

^(?=.*(A=\d+))(?=.*(B=\d+))(?=.*(C=\d+))(?=.*(D=\d+)).*
を
\1,\2,\3,\4
に置換


解説

肯定先読みで、キャプチャしてます。