php:如何替换不反斜杠的字母

lhw*_*ris 0 php regex

嗨,我想用" - "替换字符串中的所有"e",这不是反斜杠所以"你好"应该是 - >"h-llo"但是"h\ello"应该是"你好"任何想法如果这个一个正则表达式可以吗?

ken*_*ytm 5

e如果您需要组合两个正则表达式,则无法使用该标志,因为替换是不同的.

preg_replace('/(\\\\?e)/e', "'\\1'=='e'?'-':'e'", $str);
Run Code Online (Sandbox Code Playgroud)

(使用方法:http://www.ideone.com/S2uiS)

但是没有必要使用正则表达式.strtr功能能够执行这种替换.

strtr($str, array('\\e' => 'e', 'e' => '-'));
Run Code Online (Sandbox Code Playgroud)

(使用方法:http://www.ideone.com/yg93g)