プロが教える店舗&オフィスのセキュリティ対策術

Dreamweaverの検索および置換で正規表現を使用して、サイト内で使用されている<a>タグの中の「title=""」を削除したいです。どうぞよろしくお願いします。

例としては下記のような感じです。

【修正前】
<a title="ここは文字列が入っています" href="index.html" class="link">リンク文字</a>
【修正後】
<a href="index.html" class="link">リンク文字</a>

「title=""」の「””」に入っている文字列は同じ文字もありますが、基本的にすべて違います。
また、例では<a>タグの中に「href」「class」が入っていますが、リンク先が違ったり、class名が違ったり、「id」が入っていることもあります。

A 回答 (3件)

どこまでのケースを想定するかに依りまずが、こんな感じでしょうか。



検索: (<a(?: +(?!title *=)[^ >]*)*) title *= *(?:"[^"]*"|'[^']*'|[\w.:-]*)
置換: $1

■対象
<a title="ここは文字列が入っています" href="index.html" class="link">
<a title='ここは文字列が入っています' href="index.html" class="link">
<a title = test href="index.html" class="link">
<a class="link" title="ここは文字列が入っています" href="index.html">

■対象外
<area title="ここは文字列が入っています" href="index.html" class="link">
<area class="link" title="ここは文字列が入っています" href="index.html">
<a class="<link>" title="ここは文字列が入っています" href="index.html">
<a class=' title="test"' title="ここは文字列が入っています" href="index.html">

■参考URL
http://w4ard.eplusx.net/translation/W3C/REC-xml- …
http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401 …

本格的に対応すると複雑になるので多少妥協しました。対象外の <a> は妥協の産物です。
XML 1.0, HTML 4.01 に概ね準じていますが、対象外の class="<link>" なんかは違反なので考慮しなくていいかもしれません。
「この手の悪いコードがあるかもしれない」という前提で考慮したほうがベターではありますが。

class=' title="test"' は違反ではありませんが、通常見ない書き方なのでここはまあ妥協で。
http://w4ard.eplusx.net/translation/W3C/REC-xml- …
これ全部対応するのはさすがに骨が折れる…。

# Re: kouta-222さん
    • good
    • 0
この回答へのお礼

色々とご丁寧なご説明ありがとうございました。
試してみたところ、全て「title」が消えたみたいです!
大変助かりました(^^)ノシ

お礼日時:2013/11/12 11:02

(<a [^>]*) title="[^"]*" ([^>]*>)


$1 $2
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
こちらも試してみましたが、残ってしまったみたいです。
説明が足りない部分があったかもしれないです。

お礼日時:2013/11/12 11:00

Dreamweaverは知らないのだけど


http://tenderfeel.xsrv.jp/memo/70/
を参考にするとこんな感じ


検索
(<a[^>]*) ?title="[^"]+"(.*>)

置換
$1$2

どかしら?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
試してみましたが、いくつか消えずに残ってしまったみたいです。

お礼日時:2013/11/12 10:59

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