1

私は文字列を持っています:

[startstring]hello = guys[endstring] hello guys [startstring]jerk = you[endstring] man this is good!!!

[startstring]と の間の[endstring]すべて、すべての一致を削除し、文字列から and も削除し[startstring]たいと思い[endstring]ます。結果は次のようになります。

hello guys  man this is good!!!

削除されたものは次のようになります。

[startstring]こんにちは=みんな[endstring]こんにちはみんな[startstring]ジャーク=あなた[endstring]男これは良い!!!

私が何を意味するか分かりますか?

[startstring]上記のように、 andを使用せずに、結果の内容をエコーし​​たいと思い[endstring]ます。:)

私がほとんど明確であることを願っています。:-)

PHPでこれを達成するにはどうすればよいですか? これにはある種のことが含まれRegExますか?サンプルコードを提供していただけますか?

よろしくお願いします!:-)

編集:このコードを変更したり、タスクを完了するために多少使用したりできますか?

preg_match_all('/\[startstring\](.*?)\[endstring\]/s', $input, $matches);
4

1 に答える 1

3

これを実現するには、メソッド名を変更するだけで済みます。代わりにpreg_replacepreg_match_allを使用する必要があります。

preg_replace ($pattern, $replacement, $subject)  

パターンに一致するものをサブジェクトで検索し、それらを置換に置き換えます。

コード

$input = "[startstring]hello = guys[endstring] hello guys [startstring]jerk = you[endstring] man this is good!!!";
$output = preg_replace('/\[startstring\](.*?)\[endstring\]/s', '', $input);

出力

こんにちはみんな男これはいいです!!!

于 2013-01-14T03:08:10.237 に答える