-3
PHPを使ってHTML内のすべてのsrcパスを置き換えたい。RegexがhtmlではSrc属性を見つけられるが、スクリプトタグ内では見つからない
$str = preg_replace_callback('@src=\s*(?:["|\'])?([^ >"\']+)@i',array($this, 'html_src'), $str);
このコードは
ようなHTML内のすべてのSRCを見つけて、私は絶対URLとそれらのURLを交換してください。
しかし、これは問題であるため、この正規表現でタグ内のsrcを検索したくありません。
私がscriptタグ内でsrcを見つけてurlで置き換えたような場合、jsはエラーを返します。
正規表現を拡張してもらえますか?
あなたの質問に厳密には当てはまらないが、これを読んでください:http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags – Tibrogargan
私はたくさんの回答を読んでみても、すでにそれをしようとしていますが、私にとってはうまくいきません私はこの@ [^ \。]を試してみてください。src = \ s *(?:["| \ '])?([^>" \'] +)@ i – Mubbashar
リンクした質問のポイントは、 htmlでの使用にはしばしば不適切です。 XMLパーサを使用し、src属性を含む可能性のあるすべてのタグを確認します。 – Tibrogargan