• 締切済み

Perlの正規表現

Perlの正規表現 Perlの正規表現で質問です。 MT4.13を使用して携帯用サイトを構築しています。 今現在、携帯用記事中の画像を縮小して表示しようと「regex_replace」を 使って、記事中のimgタグからsrc部分を抜き出して外部のphpに飛ばしています。 <$MTEntryBody regex_replace="/<img (.*?)src=\"(.*?\.jpg)\"(.*?)>/ig","<img src="phpスクリプト?img=\\2" border="0" />"$> 記事中のjpg(JPG)画像のsrc部分を拾って、phpに渡し、GDで縮小した画像を表示すると言った感じです。 しかし、regex_replaceの正規表現部分が上手く機能していないのか、jpg画像の最後の一枚のみ変換されると言った具合です。 JPG画像も含めて、記事中全てのjpg(JPG)画像を縮小して表示したいのですが、正規表現が思い浮かばず質問しました。 上記以外にも /<img (.*?)src=\"(.*)?(\.jpg|\.JPG)\"(.*?)>/ig などとしましたが上手くいきませんでした。 ちなみに、phpで画像を縮小する部分は問題なく動作しています。 以上、宜しくお願い致します。

みんなの回答

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

元のページがどうなっているのか分からないけど その最後の1個だけを削除した状態で実行したら どうなるかしら? やっぱり残りのうちの最後の1個がなったりするのかしら? ところで MT4.13って使ったことないけど "<img src="phpスクリプト?img=\\2" border="0" />" とか明らかに"の対応がおかしくない?

ukinome
質問者

お礼

早速の回答ありがとうございます。 >>その最後の1個だけを削除した状態で実行したら >>どうなるかしら? jpg画像が一枚の時はちゃんと表示されています。 >>"<img src="phpスクリプト?img=\\2" border="0" />" >>とか明らかに"の対応がおかしくない? "(ダブルコーテーション)が、変な動作を起こしているという事でしょうか?

関連するQ&A