Есть такая регулярка которая выбирает все что находится между скобок вместе с ними, у меня никак не получается добавить исключение что бы пропускало скобку со словом table внутри. Может кто поможет.
/\[[^\]]*\]/
Вы можете использовать
'~\[(?![^][]*table)[^][]*]~'
или, если слово table
должно быть целым словом:
'~\[(?![^][]*\btable\b)[^][]*]~'
См. демо регулярного выражения
Подробности
\[
- символ [
(?![^][]*\btable\b)
- негативный блок предварительного просмотра вперёд, который, при наличии совпадения шаблона, отменяет совпадение:
[^][]*
- 0 и более символов, отличных от [
и ]
\btable\b
- целое слово table
(если проверка на целое слово необязательна, удалите \b
)[^][]*
- 0 и более символов, отличных от [
и ]
]
- символ ]
.PHP-демо:
$re = '/\[(?![^][]*\btable\b)[^][]*]/';
$str = '[kjkj] jkhjkhjk [table] [wedfwefwef] [bgfghfghf] [fvdfvd][sdfsd] [terms] [5465456] jkhjkhjkh';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
print_r($matches[0]); // => Array ( [0] => [kjkj] )
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть ли в php - функция для шифрования строк в HEX представление ? Именно шифрования а не хеширования, функция должна быть обратимойПри этом количество...
Как на laravel можно организовать динамический роутинг по поддоменам для реферальной системы? Те нужно к примеру с поддомена user1example
Делаю личную интеграцию под биржу криптовалютУ меня есть список ВОЗМОЖНЫХ ставок (ордеров), каждая их которых оформлена как form, передающая...