Erfassen von Text in eckigen Klammern in PHP

Ich brauche eine Möglichkeit, den Text in eckigen Klammern zu erfassen. So zum Beispiel die folgende Zeichenfolge:

[This] is a [test] string, [eat] my [shorts].

Könnte verwendet werden, um das folgende Array zu erstellen:

<code>Array ( 
     [0] => [This] 
     [1] => [test] 
     [2] => [eat] 
     [3] => [shorts] 
)
</code>

Ich habe den folgenden regulären Ausdruck,/\[.*?\]/ Es erfasst jedoch nur die erste Instanz.

<code>Array ( [0] => [This] )
</code>

Wie kann ich die Ausgabe erhalten, die ich benötige? Beachten Sie, dass die eckigen Klammern NIEMALS verschachtelt sind, sodass dies kein Problem darstellt.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage