- 締切済み
正規表現でグループ化の置換
正規表現でグループ化してマッチした箇所を置換したいのですが出来ますか? $1を置換したいです。 よろしくお願いします
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
javascriptの正規表現は微妙に使いにくいですが こんなかんじでどうでしょう? <script> var rex=new RegExp("<(td)((| .+?)>.+?</)(?:\\1)>","gi"); var replacement="<th$2th>"; var str=""; str="<td>aaaaa</td>"; alert(str.replace(rex,replacement)); str="<TD>aaaaa</TD>"; alert(str.replace(rex,replacement)); str="<td class=\"test\">aaaaa</td>"; alert(str.replace(rex,replacement)); str="<td>aa<span class=\"hoge\">bbb</span>ccc</td>"; alert(str.replace(rex,replacement)); </script>
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.1
>正規表現でグループ化してマッチした箇所を置換したいのですが出来ますか? >$1を置換したいです。 具体的にどういう処理がしたいのか伝わってこない 「正規表現でグループ化」とは? あと特定の言語を想定していますか?
補足
回答ありがとうございます。失礼しました。 たとえば <td>aaaaa</td> を /<(td)>/g でtdをグループ化してthに置換したいということです。 言語はjavascriptです。