[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как использовать круглые скобки в preg_replace?
qaz333
нужно заменить текст по рег. выражению, текст включает в себя круглые скобки
пример
data = (this->*lp_GetRequest[Protocol])(domain.toLocal8Bit(),"/login.php");


код
echo preg_replace("/data = \(this->\*lp_GetRequest\[Protocol\]\)\([a-zA-Z0-9\.-\(\)]{1,100},\"[a-zA-Z0-9\.-]{1,100}\"\);/is","if(!(this->*lp_GetRequest[Protocol])($1,\"$2\",data)){return 0;}",$a);


ошибка Warning: preg_replace() [function.preg-replace]: Compilation failed: range out of order in character class at offset 60
ругается из-за \(\)

как быть?
Игорь_Vasinsky
http://php.net/manual/ru/function.preg-quote.php

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
T1grOK
Цитата (qaz333 @ 11.07.2016 - 09:07)
ругается из-за \(\)

Нет ругается из-за знака диапазона "-", его нужно экранировать или перенести на последнее место в перечислении

_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.