1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?php $map = array( 'foo' => 'FOO', 'over' => 'OVER'); // get the keys. $keys = array_keys($map); // get the values. $values = array_values($map); // surround each key in word boundary and regex delimiter // also escape any regex metachar in the key foreach($keys as &$key) { $key = '/\b'.preg_quote($key).'\b/'; } // input string. $str = 'Hi foo over the foobar in stackoverflow'; var_dump($str); // do the replacement using preg_replace $str = preg_replace($keys,$values,$str); var_dump($str); |
PD9waHAKCiRtYXAgPSBhcnJheSggICAnZm9vJyA9PiAnRk9PJywKICAgICAgICAgICAgICAgICdvdmVyJyA9PiAnT1ZFUicpOwoKLy8gZ2V0IHRoZSBrZXlzLgoka2V5cyA9IGFycmF5X2tleXMoJG1hcCk7CgovLyBnZXQgdGhlIHZhbHVlcy4KJHZhbHVlcyA9IGFycmF5X3ZhbHVlcygkbWFwKTsKCi8vIHN1cnJvdW5kIGVhY2gga2V5IGluIHdvcmQgYm91bmRhcnkgYW5kIHJlZ2V4IGRlbGltaXRlcgovLyBhbHNvIGVzY2FwZSBhbnkgcmVnZXggbWV0YWNoYXIgaW4gdGhlIGtleQpmb3JlYWNoKCRrZXlzIGFzICYka2V5KSB7CiAgICAgICAgJGtleSA9ICcvXGInLnByZWdfcXVvdGUoJGtleSkuJ1xiLyc7Cn0KCi8vIGlucHV0IHN0cmluZy4gICAgCiRzdHIgPSAnSGkgZm9vIG92ZXIgdGhlIGZvb2JhciBpbiBzdGFja292ZXJmbG93JzsKCnZhcl9kdW1wKCRzdHIpOwoKLy8gZG8gdGhlIHJlcGxhY2VtZW50IHVzaW5nIHByZWdfcmVwbGFjZSAgICAgICAgICAgICAgICAKJHN0ciA9IHByZWdfcmVwbGFjZSgka2V5cywkdmFsdWVzLCRzdHIpOwoKdmFyX2R1bXAoJHN0cik7
-
upload with new input
-
result: Success time: 0s memory: 13112 kB returned value: 0
string(39) "Hi foo over the foobar in stackoverflow" string(39) "Hi FOO OVER the foobar in stackoverflow"


