По плану это должно работать как:
[group-1]Видит группа с индексом 1[/group]
[not-group-1]Не видит группа с индексом 1[/group]
Понятно что это будет не однократно встречатся в шаблоне.
С регулярками я плохо знаком, может кто поможет советом, ссылкой или примером.
Может уже есть такой скрипт, прошу дать линк...
Спустя 4 минуты, 3 секунды (28.03.2012 - 10:06) m4a1fox написал(а):
Зачем регулярка? Обычный условный оператор вполне подойдет!
Спустя 2 минуты, 2 секунды (28.03.2012 - 10:08) cyberside написал(а):
А по подробней можно?
Спустя 3 минуты, 35 секунд (28.03.2012 - 10:12) nugle написал(а):
preg_match_all('#\[group-1\](.*)\[/group\]#s')
Спустя 7 минут, 10 секунд (28.03.2012 - 10:19) cyberside написал(а):
nugle, ну а в случае если я создам новую групу не придусмотренную скриптом?
Нужно как-то поглобальней...
Попробовал так)))
Не получилось ) :lol:
Нужно как-то поглобальней...
Попробовал так)))
preg_match_all('#\[group-(.*?)\](.*?)\[/group\]#isU', $template, $group);
Не получилось ) :lol:
Спустя 6 минут, 14 секунд (28.03.2012 - 10:25) nugle написал(а):
preg_match_all('#\[group-(:.*)\](.*)\[/group\]#isU', $template, $group);
а так?
Спустя 5 минут, 52 секунды (28.03.2012 - 10:31) Invis1ble написал(а):
Цитата |
С регулярками я плохо знаком |
хороший повод познакомиться получше
Цитата |
Может уже есть такой скрипт, прошу дать линк... |
регулярки, как правило, составляются индивидуально под конкретную задачу
Спустя 1 минута, 16 секунд (28.03.2012 - 10:32) cyberside написал(а):
Array ( [0] => Array ( ) [1] => Array ( ) [2] => Array ( ) )
Спустя 6 минут, 32 секунды (28.03.2012 - 10:39) nugle написал(а):
#\[group-\d*\](.*)\[/group\]#isU
Спустя 2 минуты, 40 секунд (28.03.2012 - 10:41) cyberside написал(а):
Вот нашел что-то похожее, но немного не понимаю синтаксис, может кто подскажет что к чему?
if (strpos ( $this->template, "[not-group=" ) !== false) {
$this->template = preg_replace ( "#\\[not-group=(.+?)\\](.*?)\\[/not-group\\]#ies", "\$this->check_group('\\1', '\\2', false)", $this->template );
}
if (strpos ( $this->template, "[group=" ) !== false) {
$this->template = preg_replace ( "#\\[group=(.+?)\\](.*?)\\[/group\\]#ies", "\$this->check_group('\\1', '\\2')", $this->template );
}
Спустя 1 минута, 51 секунда (28.03.2012 - 10:43) nugle написал(а):
cyberside
ты попробовал так, как я написал?
ты попробовал так, как я написал?
Спустя 1 минута, 40 секунд (28.03.2012 - 10:45) cyberside написал(а):
nugle, Да, работает:
Array ( [0] => Array ( [0] => [group-1]Для админов[/group] [1] => [group-1]Для админо 2 в[/group] ) [1] => Array ( [0] => Для админов [1] => Для админо 2 в ) )
Спустя 5 минут, 32 секунды (28.03.2012 - 10:50) cyberside написал(а):
Вот только как опредилить для кого-что))
Спустя 14 минут, 53 секунды (28.03.2012 - 11:05) nugle написал(а):
cyberside
подставляй соответствующие значения
подставляй соответствующие значения
'#\[group-'.$var.'\](.*)\[/group\]#isU'
Спустя 7 минут (28.03.2012 - 11:12) cyberside написал(а):
nugle, я уже с тем примером разобрался...
Спустя 2 минуты, 36 секунд (28.03.2012 - 11:15) Winston написал(а):
$delim = 'group';
'#\['.$delim.'\](.*)\[/'.$delim.'\]#isU'