0

「Lorem ipsum dolor sit amet, [Hello world] consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.」というコンテンツがあります。
ラップするものを削除したい[]
ので、このコンテンツの結果を削除する必要があります[Hello world]
このように

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.

4

2 に答える 2

4

preg_replaceを使用します。

$string = 'Lorem ipsum dolor sit amet,[Hello world] consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.';
$newString = preg_replace('/\[.+?\]/', '', $string);
echo $newString;

コードパッドの例

于 2012-09-16T06:08:14.447 に答える
0

preg_replaceがその方法です。正規表現を使用して入力文字列 (3 番目のパラメーター) のパターンを照合し、パターン (1 番目のパラメーター) に一致するものを置換文字列 (2 番目のパラメーター) に置き換える文字列を返します。

$input = "Lorem ipsum dolor sit amet,[Hello world] consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.";
$output = preg_replace('/\[.+\]/', '', $input);
echo $output;

あなたに与えます:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris ornare luctus diam sit amet mollis.
  • この場合、a を使用し\てエスケープする必要があることに注意してください。文字[]文字は正規表現で特別な意味を持つためです。正規表現に関するウィキペディアのエントリには、構文を説明し、他のメタ文字をカバーするセクションがあります。
  • 別の考慮事項は、入力が次+の場合ではなく、貪欲でないマッチングに使用する必要があることです。*

    $input = "Lorem ipsum dolor sit amet,[Hello world] consectetur [test] adipiscing elit. Mauris ornare luctus diam sit amet mollis.";
    

    次に、出力からconsecteturおそらく不要なものが削除され、次のようになります。

    Lorem ipsum dolor sit amet, adipiscing elit. Mauris ornare luctus diam sit amet mollis.
    
于 2012-09-16T06:24:19.487 に答える