- preg_replace_callback: documentation ( source)
- preg_quote: documentation ( source)
<?php
function replace_not_entities($search, $replace, $subject) {
return preg_replace_callback('/&[^;]+;|(' . preg_quote($search) . ')/', $subject, function($match) use($replace) {
return isset($match[1]) ? $replace : $match[0];
});
}
print replace_not_entities('um', '__', 'Räume');