|
|
|
| можно ли поставить значение переменной в шаблоне регулярного выражения
пример
var x = znach;
var reg = /znach(.*);/;
так не получается | |
|
|
|
|
|
|
|
для: AndreyT
(29.12.2009 в 17:33)
| | вы на каком языке-то пишете? | |
|
|
|
|
|
|
|
для: AndreyT
(29.12.2009 в 17:33)
| | Это JavaScript? | |
|
|
|
|
|
|
|
для: cheops
(29.12.2009 в 20:23)
| | да javascript, нужно чтоб значение переменной входило в шаблон регулярного выражения | |
|
|
|
|
|
|
|
для: AndreyT
(29.12.2009 в 22:32)
| | var reg = new RegExp(znach + "(.*)"); | |
|
|
|
|
|
|
|
для: sl1p
(30.12.2009 в 04:43)
| | А возвращаясь к вопросу, можно ли ставить значения переменной в шаблоне регулярных выражений на PHP. Например :
$arret=preg_grep("/$_GET["familia"]/",$ar); | |
|
|
|
|
|
|
|
для: manu
(14.01.2010 в 22:28)
| | можно | |
|
|
|
|
|
|
|
для: big-trot
(14.01.2010 в 22:39)
| | И не подскажете синтаксис правильный, А то ошибку выдает когда так пишу. не пойму в чем | |
|
|
|
|
|
|
|
для: manu
(14.01.2010 в 22:40)
| | У вас кавычки в кавычках, замените на апострофы,
например
$arret=preg_grep("/$_GET['familia']/",$ar); | |
|
|
|
|
|
|
|
для: big-trot
(14.01.2010 в 22:51)
| | Все равно ошибку синтаксическую выдает((( | |
|
|
|
|
|
|
|
для: 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 не правильно записано регулярное выражение | |
|
|
|
|
|
|
|
для: big-trot
(14.01.2010 в 23:31)
| | Спасибо)) | |
|
|
|
|
|
|
|
для: 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: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : - | |
|
|
|