3v4l.org

run code in 300+ PHP versions simultaneously
<?php $test=array("abcd/abcd_.mp3", "abcd", "asdasd/abcd.mp3", "abcd.", "blahahbasdabcd"); $searchTerm = "abcd"; $replaceTerm = "XXXX"; foreach ($test as $t) echo "$t => " . preg_replace("/(". preg_quote($searchTerm) . "([^_.])|". preg_quote($searchTerm) . "$)/x", preg_quote($replaceTerm) . "\${2}", $t) . "\n";

preferences:
54.76 ms | 402 KiB | 5 Q