次のコードがあります。
$text = "Lorem ipsum dolor sit amet, [b]consectetur adipiscing elit[/b].
Nunc lorem velit, lacinia ut commodo in, suscipit vitae magna.
Nam imperdiet neque blandit semper tempus.
Curabitur sapien ante, vestibulum vitae ante a, condimentum dignissim tortor. Aenean adipiscing tincidunt lorem, non eleifend tellus suscipit a. Nulla convallis [b]
pulvinar ligula[/b], at tempor ante. Fusce a tellus enim. Vivamus nibh eros, ultrices at auctor quis, fringilla nec dolor. Aenean nec tincidunt odio, id pulvinar felis. Pellentesque in augue volutpat, gravida nibh eu, lobortis augue.";
preg_match_all("#(\[b\].*\[/b\])#s", $text, $value);
my$value
は最初の [b] から最後の [/b] に戻っています。各ペアを個別に一致させる必要があります。
私が理解しているようにs
、最後に を使用して複数の行を選択する必要がありますが、*
は貪欲すぎます。?
文字数が異なる可能性があるため、a だけを使用することはできません...何が欠けていますか?