<div id=”somevalue123” class=”text-block”>
と</div>
の間のすべてを置き換える正規表現を書くことはできますか?私はこれを行うことができますが、問題は、文字列内に他のdivノードがあることです。私はもちろん、ソースとしてHTMLファイルを渡していますdivの内容を正規表現に置き換えることはできますか?
public static function replaceStringBetween($start, $end, $new, $source, $limit = 1)
{
// Reinitialize the replacement count
self::$replacement_count = 0;
// Try to perform the replacement
$result = preg_replace('#('.preg_quote($start) . ')(.*)('.preg_quote($end)
. ')#is', '$1' . $new . '$3', $source, $limit, $count);
if ($count > 0)
{
self::$replacement_count++;
return $result;
}
// As a fallback, try again with a different method
$result = preg_replace ("#{$start}(.*){$end}#is", $new, $source, $limit, $count);
if ($count > 0)
{
self::$replacement_count++;
return $result;
}
// Return the original
return $source;
}
:ここ
は、私が使用している現在の正規表現です。 ありがとう
適切なXMLパーサーを使用する方がよいでしょう。 –