PHP: Выход из RegEx-зарезервированных-символов - кто-либо знает что случилось с этим?

AS, уже, сказал, я скорее поймаю исключение, но использование XmlParserContext, Вы могли попытаться проанализировать "вручную" и прервать любую аномалию; однако, если Вы не анализируете 100 фрагментов XML в секунду, почему, не ловя исключение?

5
задан Greg 24 November 2009 в 11:11
поделиться

2 ответа

Почему бы просто не использовать preg_quote ?

22
ответ дан 18 December 2019 в 06:35
поделиться

Я считаю, что это просто из-за порядка, в котором вы помещаете символы в массив. Попробуйте следующее:

$regex_chars = array('\\' , '[' , '^', '$' , '.' , '|' , 
        '?' , '*' , '+' , '(' , ')');  
$regex_chars_escaped = array( '\\\\ ' ,'\[ ', '\^ ', '\& ' , 
        '\. ' , '\| ' , '\? ' , '\* ' , '\+ ' , '\( ' , '\)'); 

И вы должны получить ожидаемый результат. Проверьте раздел 'потенциальных ошибок' в спецификации функции str_replace

2
ответ дан 18 December 2019 в 06:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: