大家好,小弟刚开始学PHP,有个正则把我难住了,特向大家请教。
问题如下:
<eyou:to_digest>abcdef</eyou:to_digest>
怎么用正则将中间的abcdef替换掉,最后变成<eyou:to_digest></eyou:to_digest>这样呢?
问题如下:
<eyou:to_digest>abcdef</eyou:to_digest>
怎么用正则将中间的abcdef替换掉,最后变成<eyou:to_digest></eyou:to_digest>这样呢?
$str = '<eyou:to_digest>abcdef</eyou:to_digest>';
$str = preg_replace('/>(\w+)</', '><', $str);
echo htmlspecialchars($str);
/**
输出结果:
<eyou:to_digest></eyou:to_digest>
*/
$string = '<eyou:to_digest>abcdef</eyou:to_digest>';
$pattern = '(abcdef)';
$replacement = '${1}';
echo preg_replace($pattern, $replacement, $string);
?>
运行结果
<html>
<head></head>
<body>
<eyou:to_digest></eyou:to_digest>
</body>
</html>