preg_replace - 如何删除标签内的内容?

Kav*_*vin 4 php preg-replace

说我有这个.

$string = "<div class=\"name\">anyting</div>1234<div class=\"name\">anyting</div>abcd"; 
$regex = "#([<]div)(.*)([<]/div[>])#";
echo preg_replace($regex,'',$string);
Run Code Online (Sandbox Code Playgroud)

输出是abcd

但我想要1234abcd

我该怎么做?

sg3*_*g3s 9

像这样:

preg_replace('/(<div[^>]*>)(.*?)(<\/div>)/i', '$1$3', $string);
Run Code Online (Sandbox Code Playgroud)

如果你想删除div:

preg_replace('/<div[^>]*>.*?<\/div>/i', '', $string);
Run Code Online (Sandbox Code Playgroud)

要仅使用类名而不是其他类替换div中的内容:

preg_replace('/(<div.*?class="name"[^>]*>)(.*?)(<\/div>)/i', '$1$3', $string);
Run Code Online (Sandbox Code Playgroud)