PHP регулярное выражение [b] до <b> - PullRequest
0 голосов
/ 25 сентября 2011
  "'\[b\](.*?)\[/b\]'is",

Работает ли мой текущий RegEx. Но я хочу вместо этого изменить [] на <>. Но это не работает ... Что мне нужно изменить, кроме того, что нужно [*]

Ответы [ 2 ]

1 голос
/ 25 сентября 2011

Для PHP доступно различных парсеров BBCode , например

, который позволяет вам просто определить правила замены вручную:

echo bbcode_parse(
    bbcode_create(
        array(
            'b' => array(
                'type'      => BBCODE_TYPE_NOARG,
                'open_tag'  => '<b>',
                'close_tag' => '</b>'
            )
        )
    ),
    '[b]Bold Text[/b]'
);
// prints <b>Bold Text</b>

Также проверьте различные похожие вопросы о парсерах BBCode:

1 голос
/ 25 сентября 2011

Попробуйте ~ в качестве разделителя вместо

preg_match("~<b>(.*?)</b>~is", $text, $b);
...