Я знаю, что это, вероятно, глупый вопрос, но я застрял, пытаясь понять, как заставить preg_match_all делать то, что я хочу ...
Я хочу сопоставить строки, которые выглядят как <[someText]>Кроме того, я хотел бы сделать это ленивым образом, поэтому, если есть строка типа
$myString = '<[someText]> blah blah blah <[someOtherText]> lala [doNotMatchThis] ';
, я хотел бы иметь 2 совпадения: '<[someText]>' и '<[someOtherText]> 'в отличие от одного совпадения' <[someText]> бла-бла-бла <[someOtherText]> '
Я пытаюсь сопоставить это со следующей схемой
$pattern = '<\[.+?\]>';
, но дляпочему-то я получаю 3 совпадения: [someText], [someOtherText] и [doNotMatchThis]
Это приводит меня к мысли, что по какой-то причине угловые скобки мешают друг другу, что я нахожу странным, потому что они не являютсядолжны быть метасимволами.
Что я делаю не так?