0

As you know ereg_replace is deprecated now. I tried to pass to preg_replace but nothing works as before with ereg_replace.

I want to change the ereg_replace here:

$test = ereg_replace("%5C%22", "%22", $test);

$tar = ereg_replace(" ", "", $tar);

$test2 = ereg_replace("#EM#", $tar, $test2);

$su = ereg_replace("&emar&", $tar, $su);

I've edited with preg_replace like this but I don't know if it's correct

$test = preg_replace('/%5C%22/', '%22', $test, -1);

$tar = preg_replace(/ /, '', $tar, -1);

$test2 = preg_replace('/#EM#/', $tar, $test2, -1);

$su = preg_replace('/&emar&/', $tar, $su, -1);

this one :

$test2 = preg_replace('/#EM#/', $tar, $test2, -1);

is correct or I change to:

$test2 = preg_replace('/\#EM\#/', $tar, $test2, -1);

Thank you.

Blauharley
  • 4,186
  • 6
  • 28
  • 47
z.ziflar
  • 15
  • 5
  • Possible duplicate of [How can I convert ereg expressions to preg in PHP?](http://stackoverflow.com/questions/6270004/how-can-i-convert-ereg-expressions-to-preg-in-php) – user3942918 Apr 01 '17 at 21:18
  • collect or not is easy to check by writing some small tests – Yu Jiaao Apr 02 '17 at 03:12

1 Answers1

0

The only difference in your examples would be that you need to add Delimiters.

http://php.net/manual/en/regexp.reference.delimiters.php

When using the PCRE functions, it is required that the pattern is enclosed by delimiters. A delimiter can be any non-alphanumeric, non-backslash, non-whitespace character.

Often used delimiters are forward slashes (/), hash signs (#) and tildes (~).

But, that being said, in your case it will be more performant and simpler to use str_replace as you are not really using any regular expression pattern.

Nazareno Lorenzo
  • 1,069
  • 2
  • 14
  • 25