1

最近、私はWebアプリケーションプロジェクトのリファクタリングを開始しました。JSPで記述された多くのHTMLタグは、W3Cで定義された標準を尊重していません。閉じていないすべてのタグを閉じたい。

<img style="border:0px;"
     src="target/img/expande.gif"
     alt="Expand target information" > // --> this tag is not closed!

したがって、このexprを使用すると、閉じていないすべてのタグを検索できます。
(?s)<img("[^"]*"|'[^']*'|[^'">/])*>
コードの一部を次のように置き換えるにはどうすればよい/>ですか。

4

1 に答える 1

1

に一致するファイルに対してEclipse組み込みの正規表現ベースの検索と置換を使用していると想定します*.jsp

かっこで関心のある部分をグループ化する必要があります。

(?s)(<img("[^"]*"|'[^']*'|[^'">/])*)(>)

代わりに、各グループは、グループの1ベースのインデックスが$nどこにあるかによって識別できます。nしたがって、は要素$1全体を返さずに返します(そして、それ自体を返します。一致全体を返すことに注意してください)。<img ...>$2>$0

したがって、正規表現をそのようにグループ化すると、この置換は次のようになります。

$1/>

注:交換品を慎重にプレビューしてください。正規表現とHTMLは必ずしもうまく調和するとは限りません。

于 2013-01-17T16:35:49.087 に答える