- 締切済み
間を残した置換方法
正規表現の置換方法についてアドバイス願います。 現在、以下のHTMLソースを置換したいと考えています。 <td>なんとか1</td> <td>なんとか2</td> <td>なんとか3</td> <td>なんとか4</td> <td>なんとか5</td> … これを、中の文字は残して<th>なんとか1</th>へと置換したいと考えています。 検索時には以下の内容でヒットさせることは出来たのですが、 <td>.*</td> 中身を残すという指定方法が分かりません・・・。 中身の文字列は、文字数も記載内容もばらばらの状態です。 どなたか、中身を残した指定方法をアドバイスいただけないでしょうか。 よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- Tacosan
- ベストアンサー率23% (3656/15482)
O'reilly にそのまま「正規表現」って本はあるけど, 「正規表現」は使うプログラムによって違うことに注意.
- keithin
- ベストアンサー率66% (5278/7941)
たとえばMicrosoftのWORDを使い, Ctrl+Hで置換のダイアログを出し 置換ダイアログのオプション>を開き あいまい検索のチェックを外し ワイルドカードのチェックを入れて \<td\>(*)\</td\> を <th>\1</th> に すべて置換します。 正規表現検索が使えるその他のテキストエディタでも,だいたい同様の事はこなします。
- Tacosan
- ベストアンサー率23% (3656/15482)
正確な状況は分からんけど td を th に置き換える だけで済んだりして.
- ORUKA1951
- ベストアンサー率45% (5062/11036)
<td>([^<]*)</td> → <th>\1</th> <td>(.*?)</td> → <th>\1</th> 後方参照使います。後方参照のマークはPerlの場合$1になります。 >検索時には以下の内容でヒットさせることは出来たのですが、 ><td>.*</td> では、<td>なんとか1</td><td>なんとか2</td><td>なんとか3</td>にもマッチしてしまいます。
お礼
有難う御座います! アドバイス頂いた方法で無事置換できました。 >>では、<td>なんとか1</td><td>なんとか2</td><td>なんとか3</td>にもマッチしてしまいます。 なるほど、おっしゃる通りでした…。 ちなみに、正規表現の置換方法などが詳しく掲載されているページまたは書籍など御座いましたら、こちらも情報いただけないでしょうか。根本となる書き方の基本など学んでみたいと思います。何度もすみません。
お礼
有難う御座います。 >>td を th に置き換える 今回の例のままだとそうですよね…。^^ ただ、あくまで例でしたので、実際にはタグも異なれば中身の記載も異なるのが現状でした。 ご説明不足で申し訳ありませんでした。