電子書籍の厳選無料作品が豊富!

DreamweaverCS4で正規表現を使った検索の質問です

例えば下のような内容のhtmlがある時
hrefの中身が.htmlで終わらないモノにだけマッチさせるにはどのように記述したらいいでしょうか?

■html
1|<p><a href="#abc">あいうえお</a></p>
2|<p><a href="index.html">かきくけこ</a></p>
3|<p><a href="index.html" target="_blank">かきくけこ</a></p>
4|<p><a href="index.html"><img src="example.jpg" />かきくけこ</a></p>
5|<p><a href="long.html">かきくけこ</a></p>
6|<p><a href="long.htm">かきくけこ</a></p>
7|<p><a href="long.html" alt="">かきくけこ</a></p>
8|<p><a href="#long">かきくけこ</a></p>

■マッチして欲しい箇所
1|<p><a href="#abc">あいうえお</a></p>
6|<p><a href="long.htm">かきくけこ</a></p>
8|<p><a href="#long">かきくけこ</a></p>

href=".*?[^l]">
こうゆう風に書いてみたのですが
3のtargetや、7のaltがあるhrefもマッチしてしまいました

A 回答 (2件)

^(?!.*href="[^"]*html")(?=.*href).*$


とか?
否定の先読みとか、先読みが使えればですが・・・。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
否定の先読みというものがあるんですね、知りませんでした。

残念ながら教えていただいた記述ではマッチしませんでしたが、
先読みを調べてDwで使えるか試していたところ
(?!href=".*html")href=".*"
でhtmlで終わらないhrefにマッチさせる事ができました

ありがとうございました、勉強になりました。

お礼日時:2010/09/09 15:46

Dreamweaverの正規表現は知りませんが、


 /href="[^"]*html"/
にマッチしないと言う条件ではいかがでしょうか?

対象が必ずダブルクォート(")を使用していて、文法間違いがない(閉じ忘れがないなど)という仮定ですが。
対象の状況によっては、事前に空白を除いておく必要があるのかも…
    • good
    • 0
この回答へのお礼

回答ありがとうございます
/href="[^"]*html"/だと何もヒットせず
スラッシュを外し href="[^"]*html" にするとhtml"で終わるリンクがヒットしてしまいました。

詳しくは無いのですが
/~~~/は、スラッシュの中身が正規表現のパターンですよという印ですよね?

もう少し頑張ってみます、ありがとうございました。

お礼日時:2010/09/07 11:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!