Я пытаюсь сопоставить теги с помощью preg_replace. Используемое регулярное выражение: <video[^>]*>(.*?)</video>
Но я получаю предупреждение сервера: Message: preg_replace() [function.preg-replace]: Unknown modifier ']'
Какие-нибудь подсказки о том, почему?
Кроме того, как я могу изменить регулярное выражение, чтобы он мог сопоставлять [видео] теги?
Благодаря!
Не забудьте разграничить ваше регулярное выражение, как это требуется в функциях preg_
. Обычно мы будем писать /regex/
, но любые разделители будут делать.
Поскольку ваше регулярное выражение содержит /
, я перейду на %
, чтобы избежать его.
%<video[^>]*>(.*?)</video>%
Разумеется, следите за опасностями попыток испортить HTML через регулярное выражение. Будут проблемы. Как всегда.
Если вы хотите [video]
вместо этого, просто замените все <>
на []
– но не забудьте их избежать, поскольку [
и ]
значимы в регулярных выражениях!
%\[video[^\]]*\](.*?)\[/video\]%