экранировать + знак в preg_replace - PullRequest
1 голос
/ 02 апреля 2011

Как мне избежать этого?

/{\([^.{}]*)-}/

А это?

/{\([^.{}]*)+}/

Ответы [ 2 ]

1 голос
/ 02 апреля 2011

Вам нужно избегать скобок , скобок и знака плюс - если вы хотите буквально сопоставить их. Код PHP для вашего регулярного выражения будет:

$output = preg_replace('/\{\([^.{}]*\)-\}/', 'replace-string', $input);

... и ...

$output = preg_replace('/\{\([^.{}]*\)\+\}/', 'replace-string', $input);

Это будет соответствовать таким вещам, как {(abc)-} {(abc)+}.

1 голос
/ 02 апреля 2011

preg_quote даст вам ответы.

...