- 締切済み
正規表現でimg要素後に続く改行を削除したい
現在、下記のようになっています ******* <img hogehoge /> 本文~ ******* それを ******* <img hogehoge /> 本文~ ******* この様に正規表現で変更したいのですが img要素に続く改行をひとつ削除することはできるでしょうか? よろしくお願いいたします
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- SAYKA
- ベストアンサー率34% (944/2776)
>置換文字列 : (<img[^>]+)(>)\n >置換後のimg要素がすべて >(<img[^>]+)(>) そりゃ置き換え文字列だからそうなるだろうね… 置き換えする場合、検索時の文字をどうやってもってくるのかってのをもう少し調べたら良いんじゃないかな。 置き換えはされてるなら検索は大丈夫だろうしもう一息だよ。 ただ、気になるのは「1行のimgタグが2つ(以上)有って改行が2つ続く場合」かな。 変換されて1つになっちゃったりしてたら「最短一致」で探してごらん。
- SAYKA
- ベストアンサー率34% (944/2776)
削除できるよ。 ただし、どういう文字列で正規表現を書いたらできるかっていうのは質問者があれこれやってみて、それを出して「ここは違うよ」という指摘しかしてあげられない。 だからまず自分で挑戦してみて。 うまくいかなかったらその正規表現を出して、こうなってしまってだめだった、と補足してね。 http://www.google.com/search?lr=lang_ja&q=%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE%20%E5%85%A5%E9%96%80
補足
ありがとうございます! 返信はこのフォームでいいのかな・・・間違えていたらすみません 改行が2つ続くimg要素のみに適応したいので 現在 検索文字列 : (<img[^>]+)(>)\n\n 置換文字列 : (<img[^>]+)(>)\n で試したのですが 置換後のimg要素がすべて (<img[^>]+)(>) になってしまって・・・ img要素はそのままにというのはどう変更すればいいのでしょうか よろしくお願いいたします
補足
検索文字列 : (<img[^>]+)(>)\n\n 置換文字列 : \1>\n 正解かどうかは不明なのですが これで変換できました! ありがとうございますっ 正規表現、おもしろいですね