Подтвердить что ты не робот

Php найти строку с регулярным выражением

Я читал несколько руководств по регулярному выражению, но это просто не будет в моей голове. Я никогда не смогу заставить свои шаблоны работать. Надеюсь, кто-то может помочь.

У меня есть переменная php ($ content), где мне нужно найти определенный шаблон, который выглядит как

[галерея:: имя/из//папки/]

Я бы хотел поискать:

- starting with "[gallery::"
- any other character (variable length)
- ending with "]"

До сих пор в PHP у меня было:

   preg_match('/\[gallery\:/', $content, $matches, PREG_OFFSET_CAPTURE);

Я могу найти [галерею: но это. Я хотел бы иметь возможность найти остальные (: name/of/the/folder/])

Любая помощь приветствуется! Спасибо!

4b9b3361

Ответ 1

Попробуйте выполнить его:

preg_match("/\[gallery::(.*?)]/",$content,$m);

Теперь $m - массив:

0 => [gallery::/name/of/the/folder/]
1 => /name/of/the/folder/

Ответ 2

измените ваше регулярное выражение на

'/\[gallery::([A-Za-z\/]+)\]/'

Поскольку я помещаю в скобку папку/путь, вы должны получить из нее группу захвата.

Ответ 3

if (preg_match("/\bweb\b/i", "PHP is the web scripting language of choice.")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}