2

良い一日、

最初のタグ([Test1])を認識するために、このスクリプトが下にありますが
、現在のuriで行うのは、最初の角かっこと最後の角かっこを取得することだけ
なので、出力は「Test1]Title[Test9」 です。

出力を「Test1」にします。preg_matchを変更しようとしましたが、必要なものが得られないようです。誰かが私が正しい道を進むのを手伝ってくれることを願っています。

<?php
$uri = "[Test1] Title [Test9].jpg";
$str = "'".$uri."'";
if (preg_match('/\[([^\)]+)\]/', $str, $matches)) {
    echo "[".$matches[1]."]";
}
?>

前もって感謝します。

4

1 に答える 1

0

'?'を使用する必要があります 貪欲でない一致を取得するためにサインインします。

<?php
$uri = "[Test1] Title [Test9].jpg";
$str = "'".$uri."'";
if (preg_match('/\[(.+?)\]/', $str, $matches)) {
    echo "[".$matches[1]."]";
}

オンラインでテストする

于 2012-08-30T10:27:04.053 に答える