Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: значение переменной в шаблоне регулярного выражения

Сообщения:  [1-10]   [11-13] 

 
 автор: heed   (15.01.2010 в 01:04)   письмо автору
 
   для: manu   (14.01.2010 в 23:37)
 

обычно приходится использовать $str = preg_quote($str), чтобы переменная '....' искала только точки

string preg_quote ( string $str [, string $delimiter= NULL ] )

preg_quote() takes str and puts a backslash in front of every character that is part of the regular expression syntax. This is useful if you have a run-time string that you need to match in some text and the string may contain special regex characters.

The special regular expression characters are: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : -

  Ответить  
 
 автор: manu   (14.01.2010 в 23:37)   письмо автору
 
   для: big-trot   (14.01.2010 в 23:31)
 

Спасибо))

  Ответить  
 
 автор: big-trot   (14.01.2010 в 23:31)   письмо автору
 
   для: manu   (14.01.2010 в 22:57)
 

Возможно содержимое переменной не является валидным регулярным выражением.
Вот пример, который работает

$str = '[dbimg id="187" w="100" h="100"]';
$str1 = 'id';
preg_match("|$str1|",$str,$arr);


А вот пример который не работает

$str = '[dbimg id="187" w="100" h="100"]';
$str1 = 'id[]';
preg_match("|$str1|",$str,$arr);


Потому что в переменной $str1 не правильно записано регулярное выражение

  Ответить  
 
 автор: manu   (14.01.2010 в 22:57)   письмо автору
 
   для: big-trot   (14.01.2010 в 22:51)
 

Все равно ошибку синтаксическую выдает(((

  Ответить  
 
 автор: big-trot   (14.01.2010 в 22:51)   письмо автору
 
   для: manu   (14.01.2010 в 22:40)
 

У вас кавычки в кавычках, замените на апострофы,
например

$arret=preg_grep("/$_GET['familia']/",$ar);

  Ответить  
 
 автор: manu   (14.01.2010 в 22:40)   письмо автору
 
   для: big-trot   (14.01.2010 в 22:39)
 

И не подскажете синтаксис правильный, А то ошибку выдает когда так пишу. не пойму в чем

  Ответить  
 
 автор: big-trot   (14.01.2010 в 22:39)   письмо автору
 
   для: manu   (14.01.2010 в 22:28)
 

можно

  Ответить  
 
 автор: manu   (14.01.2010 в 22:28)   письмо автору
 
   для: sl1p   (30.12.2009 в 04:43)
 

А возвращаясь к вопросу, можно ли ставить значения переменной в шаблоне регулярных выражений на PHP. Например :
$arret=preg_grep("/$_GET["familia"]/",$ar);

  Ответить  
 
 автор: sl1p   (30.12.2009 в 04:43)   письмо автору
 
   для: AndreyT   (29.12.2009 в 22:32)
 

var reg = new RegExp(znach + "(.*)");

  Ответить  
 
 автор: AndreyT   (29.12.2009 в 22:32)   письмо автору
 
   для: cheops   (29.12.2009 в 20:23)
 

да javascript, нужно чтоб значение переменной входило в шаблон регулярного выражения

  Ответить  

Сообщения:  [1-10]   [11-13] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования