- 締切済み
Dreamweaverで正規表現を用いた置換
画像名の_アンダーバーを-ハイフンに置換したいのです。 プログラミングに詳しくなく、サイト内のHTMLを全置換したいため、Dreameaverを使えないかと思っています。 検索場所:[タグ][img] 属性あり:[src][=][(.*)\_(.*)] アクション:[src][$1-$2] 上記で置換すると、画像名内の1つの_(アンダーバー)しか置換してくれません。複数のアンダーバーを置換する表現を教えてください。
- applepeach
- お礼率20% (1/5)
- HTML
- 回答数2
- ありがとう数0
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- mach-mach
- ベストアンサー率18% (166/914)
編集メニューから「検索/置換」 検索場所は、画像が入っているフォルダ 検索する文字列を、ソースコードにして -(ハイフォン) 置き換え後の文字列を _(アンダースコア) で、すべて置換を選択 では?
エンコードがShift-Jisなら テキストで開いて置換してみては?
補足
ありがとうございます。 ただ、この方法だと、HTMLソース内の全ての_を 変換してしまいます。 IMGタグ内の画像名内の_だけを変換したいんです。
関連するQ&A
- 正規表現でタグの置換をしたいと試行錯誤しております。
正規表現でタグの置換をしたいと試行錯誤しております。 もう1歩のところだと思いますがなかなかうまくいきません。 imgタグのsrcの中身を置換したいと思っております。 <img src="/uploads/abc.gif"><img src="/uploads/test/aaa.jpg"> 上記のタグを下記のように置換 <img src="cid:abc.gif"><img src="cid:aaa.jpg"> ディレクトリの部分を「cid:」とし、その後にファイル名とする。 preg_replace('/<img[^>]*src="([^"]+).+>/', "<img src=\"cid:$1\">", $body); 上記のようなコードにまではたどり着きましたがディレクトリの削除がうまくいきません。 良い方法があれば教えてください。
- ベストアンサー
- PHP
- 正規表現についての質問です。
正規表現についての質問です。 現在、HTMLのimgタグを使って「/img/jpg/」ディレクトリにある画像ファイルを複数表示しています。 例) <img src="/img/jpg/1111.jpg" > <img src="/img/jpg/mm2222.jpg" > <img src="/img/jpg/kkkkk3333.jpg" > これをそれぞれ、以下のように置換したいと考えています。 例) <a href="http://www.xxxxx.jp/1111.jpg"><img src="/img/jpg/1111.jpg" width="240px"></a> <a href="http://www.xxxxx.jp/mm2222.jpg"><img src="/img/jpg/mm2222.jpg" width="240px"></a> <a href="http://www.xxxxx.jp/kkkkk3333.jpg"><img src="/img/jpg/kkkkk3333.jpg" width="240px"></a> imgタグをリンクタグで囲むのですが、リンク先URLには元々の画像ファイル名が使われています。また、imgタグには「width="240px"」が付加されています。 このような置換をPHP5で行うには、どのような正規表現を使用したらよろしいでしょうか。 宜しくお願い致します。
- 締切済み
- PHP
- 正規表現についての質問です。
正規表現についての質問です。 現在、HTMLのimgタグを使って「/img/jpg/」ディレクトリにある画像ファイルを複数表示しています。 例) <img src="/img/jpg/1111.jpg" > <img src="/img/jpg/mm2222.jpg" > <img src="/img/jpg/kkkkk3333.jpg" > これをそれぞれ、以下のように置換したいと考えています。 例) <a href="http://www.xxxxx.jp/1111.jpg"><img src="/img/jpg/1111.jpg" width="240px"></a> <a href="http://www.xxxxx.jp/mm2222.jpg"><img src="/img/jpg/mm2222.jpg" width="240px"></a> <a href="http://www.xxxxx.jp/kkkkk3333.jpg"><img src="/img/jpg/kkkkk3333.jpg" width="240px"></a> imgタグをリンクタグで囲むのですが、リンク先URLには元々の画像ファイル名が使われています。また、imgタグには「width="240px"」が付加されています。 このような置換をPHP5で行うには、どのような正規表現を使用したらよろしいでしょうか。 宜しくお願い致します。
- ベストアンサー
- PHP
- 正規表現による置換
HTMLの構文も正規表現もよく理解しないままに作業をしているので とんちんかんなことを言っているのかもしれません 合わせて指摘してもらえると助かります Yahoo pipes 使ってる中で発生している現象です 目的としては HTMLタグから一部の文字列を取り出したく 変換元のXTMLは以下のようなものです(一部加工しています(***** の部分は隠しています) <a rel="nofollow" target="_blank" href="http://*****.html">抽出したい文字列</a> <img alt="new" class="new" height="15" src="http://*****.jpg" width="32"/> に対して 置換対象 .*html">(.*) 置換後 $1 を行ってからさらに 置換対象 (.*)<img.* 置換後 $1 としたところ 一応抽出はできました 本来 2回目は (.*)</a の気がするのですが1回目の結果を見るとなぜか</a> の部分もなくなってしまっています これも不思議なのですが 2回に分けて行うのは面倒なので1度で行いたいと思い 置換対象 .*html">(.*)<img.* 置換後 $1 としてみたのですが 求めている文字列の抽出をすることができませんでした .一応 *html">(.*)</a.* というのもやってみましたが結果は変わりませんでした これは当然の結果ななのか変換(処理)ツールの不具合なのかの判断ができません 分かる人がいたら教えてもらえないでしょうか 情報足りなければ補足させていただきます
- ベストアンサー
- その他(ソフトウェア)
- 抽出 正規表現 DOM?
PHPの正規表現で、例えば <img src="画像ファイル名"...> のようにイメージタグのsrc部分の画像ファイル名を抽出させたいのですが、正規表現の記述の仕方がわかりません。 このようなイメージタグなのですが、imgがIMGだったり、src=画像ファイル名 のように""がなかったり、 alt, width, height, borderなど属性もありますので、正規表現で純粋に画像ファイル名を抽出するのは難しいと考えますが、ふと思ったのですが、DOM???を使えば簡単にできる?かなと思うだけでこれも実現方法がわかりません。 現在、PHP4.3を使っていますが可能でしょうか?
- ベストアンサー
- PHP
- 正規表現で置換したい
ブログのシステムを変更して、 記事中にある内部リンクの書き換えが必要となりました。 現在、記事中に post-001.html post-005.html ・ ・ ・ post-853.html という文字列があります。 数字は飛び飛びでそれぞれ異なり500個ほどあります。 WordPressのプラグインの「Search Regex」を使って置換をしたいのですが、 正規表現で置換して、 ハイフンをアンダーバーに置換し、お尻の「.html」は削除して post_001 post_005 ・ ・ ・ post_853 としたいのですが、正規表現で置換する場合、 どのようにすればいいのでしょうか。 「post-」を ( ) でくくればいいのでしょうか。 「.html」削除するにはどうすればいいのでしょうか。 Search Regex に Search pattern(置換前の文字列)と Replace pattern (置換後も文字列)を入力する欄があります。 上のような文字列を置換したい場合は、 それぞれどのような記号を入力すればよいのでしょうか。 アドバイスをよろしくお願いいたします。
- ベストアンサー
- Perl
- 正規表現 での置換処理について
こんばんは。 納期が迫ってきていて、頭が回らず、こちらに質問させていただきます>< 「HTMLタグが含まれた文章」 を処理します。 その中の <img~> <br> <hr> タグを <img~/> <br /> <hr /> に置換したいのです。 /の前には半角のスペースが1文字入るようにしたいです。 また、もし上記タグで、最初から終了タグが含まれていた場合は処理対象外にしたいです。 もしも <br /> があれば、それは終了タグがついているので処理しない。 納期前にモバイルページ(XHTML)での確認をしたら 終了タグがなくてあわててしまいました。 どうかお力をお貸しください。よろしくお願いいたします。 PHPのバージョンは5.1です。
- ベストアンサー
- PHP
- 正規表現について
アメブロから独自ブログへ引越しを行うことになったのですが、 ペタしてね というリンク画像を毎ページに張り付けており、この画像リンクを一括で削除したいと思っています。 HTMLタグのパラメータが微妙にばらついており、正規表現の利用が必要かなと思っています。 専用のプラグインをインストールし、正規表現を利用して削除できることが分かったのですが、 正規表現の方法を数時間勉強してみましたが、結局どうすればいいのかわかりません・・・ 削除する画像リンクは以下のようなものです。 <a href="http://.........................."><img height="100" alt="ペタしてね" src="http://stat.ameba.jp/blog/ucs/img/decoPeta/pc/decoPeta_18.gif" width="100" /></a> width や hight がページによって微妙に違うようです。 どちらさまか、上記のようなタグをマッチングさせる正規表現を教えていただけませんでしょうか。
- ベストアンサー
- PHP
- 急ぎでお願いします!正規表現の置換について
こんにちわ。 HTMLのコードを置換エディターで一括で書き換えたいと思っています。 例えば <h2 id="01"><img src="../imgs/dish/index_tit_01.gif" alt="サンプル" width="630" height="36" /></h2> というようなコードをaltの文字以外は削除して <h2 id="01">サンプル</h2> にしたい場合、検索する文字列、置換する文字列にはどのような正規表現を適用したらよいでしょうか? また<h2 id="01">が<h2 ="id=02">,<h2 ="id=03">と複数ある場合があるので、 できたらid=数字のところは01,02,03,04などにもまとめて適用させたいと思っています。 どうかご教授よろしくお願いします!!!
- ベストアンサー
- その他(プログラミング・開発)
- preg_match_allで正規表現
preg_match_allにて、次のように<img>が連続したソースから、 ※URLは全てダミーです <img src="http://a.com/a/a.jpg"><img width="10" src='http://b.com/b/b.gif' height="10"><img width="10" height="10" src='http://c.com/c/c.png"><img src=http://d.com/d/d.jpg><img src="http://e.com/hogefuga/e.jpg"> 個々のimgタグ全体と"<img~>"、 個々のsrc="~"のURLを抽出したいのですが、下記の条件でマッチさせることはできるでしょうか? 1. imgの属性位置・有無に問わず 2. 属性のくくりが、'" のどちらでも、または有無に問わず 3. src=~内に、"hogefuga"を含まないものにだけマッチ(否定形) 次のような正規表現で試したところ、 $pattern = '/<img.*?src=(\'|")?((?(?!hogefuga).)*\.(jpg|gif|png))(\'|")?.*?>/i'; 下のようにimgタグが1行づつ並んでいる場合は上手くいったのですが、連続して並んでいる場合は個々の、"<img~>"でマッチされませんでした。 ※URLは全てダミーです <img src="http://a.com/a/a.jpg"> <img width="10" src='http://b.com/b/b.gif' height="10"> <img width="10" height="10" src='http://c.com/c/c.png"> <img src=http://d.com/d/d.jpg> <img src="http://e.com/hogefuga/e.jpg"> 最終的にはsrc="~"のURLに応じて、画像をテキストリンクへ置換する、ということをしたいのですが、正規表現がよくわからず試行錯誤しています。 このような場合はどのような正規表現を書くべきなのでしょうか? どうぞよろしくお願いします。
- ベストアンサー
- PHP
補足
ありがとうございます。 私の質問が悪かったですね。 ファイル名ではなく、HTMLソースのIMGタグ内の 画像名だけを置換対象にしたいのです。 ご回答いただいた方法では上手くいきませんでした。