Привет. Нужна регулярка, чтобы отделяла переменную только если она начинается с начала строки и после нее пробелы, табуляция, либо если не сначала то перед ней пробелы, табуляция.... Нужна для preg_replace. Пробывал так, но не выходит: PHP: <?php preg_replace('/(^|\s*)/(' . $Var . ')\s*/iu', '<b>$0</b>'; Помогите, плиз...
а может кому интересно будет помочь. Надо найти все $var которые находятся как отдельные слова между '= class' и ближайшим 'end;' пробую так '/=\bclass\b(' . $var . ')\bend;/iu' Но ничего не выходит. Помогите, а, люди добрые.
Получилось вот такое извращение: PHP: <?php $var = 'varname'; if(preg_match('/=[[:blank:]]*class[[:blank:]]*('.$var.')[[:blank:]]*end/i', 'This is = class '.$var.' end;', $poc)) { echo "We've found \$".$poc[1]; } ?>
Без вопросов: PHP: <?php $var = 'varname'; if(preg_match('/=(?:.*?)class(?:.*?)('.$var.')(?:.*?)end/i', 'This is = class '.$var.' end;', $poc)) { echo "We've found \$".$poc[1]; } ?>
kostyl не успел до конца строки какой? передаваемой в регулярку, или многострочный текст с переносами строк?
Если посудить чисто логически, то: С многострочным текстом можно работать в виде одной строки. Тогда какой смысл выбирать весь текст, если он у нас есть? Правильно, не за чем. Поэтому передается строка скорее всего, получаемая средствами РНР или представляемая
текущей. Я уже сделал, у меня не получалось, потому что регуларки разные накладываются и получалось что в конце строки уже стоит <br />, поэтому сделал так: '#//.*?(<br />)#iu'
Код (Text): #//.*?(\<br\ /\>|$)#iu если перенос или конец текста Apple подстветку комментариев в коде bbcode видел? еще вопросы?
Apple а я твою наверное не понял "С многострочным текстом можно работать в виде одной строки. " - ну да, искать в нем символы переноса и конец строки?