正規表現を間違えてデータが消えてしまった失敗
例えば、<table ~></table> というHTML構文を <table ~ class="mofmof"></table>に変更しようと思いました。
正規表現で <table *>を一括変換し、保存した後で、なんか表示がおかしいので調べてみたところ <table を含む行がざっくり消えてしまったことに後で気づいたということがあります。
文字の繰り返しを表す正規表現パターンの最長一致と最短一致 | JOHOBASE
よくよく考えてみれば分かるはずなのですが、調べてみると、ワイルドカードを使った正規表現の一致には、最小一致と最大一致が存在するのだと。
このサイトの win2k.org への引っ越しでやってしまい、失敗したインポートを削除するので数日かかって事件があったのでした(・ω<) てへぺろ
既定で、<table *>だと最大一致になってしまうので。最小一致にする場合は <table *?>にすべきだった様です
Comments