2017-03-07 6 views
-2

ウェブサイト内のすべてのhrefを変更したいと思います。php preg_match add href .html

<a href="sitename">xyz …</a> 

へ:助けを

<a href="sitename.html>xyz …</a> 

ありがとう!

+0

パーサを使用して、次の方法を使用してそれを行うことができます。正規表現は使用しないでください(http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags#answer-1732454)。あなた自身の質問で見られるように、欠落している引用符で、あなたはそのHTMLであなたが何を見つけるのか分からない。 – LSerni

答えて

-1
$content = file_get_contents('page.html'); 

$new_content = str_replace('<a href="', '<a href="sitename.html', $content); 

echo $new_content; 
+0

すべての末尾の内容はまだ 'href'sになります。また、これはすべての 'href'が二重引用符で囲まれていることを前提としています。パーサーを使用するのが最適です。 – chris85

+0

ありがとうございます。しかし、これは解決策ではありません。 'sitename'は可変です。 – Harold

+0

変数としてsitenameを簡単に追加できました。 "$ html" – clearshot66

0

あなたは...

$hrefs = '<a href="sitename1">xyz …</a> 
<a href="sitename2">xyz …</a>'; 
$r = '/(?<=href=").*?(?=">)/'; 
$sitename = 'sitename.html'; 
$result = preg_replace($r, $sitename, $hrefs); 
echo $result; 

DEMO