3

次の文字列を切り取り、BEFORE と AFTER のすべてのコンテンツを取得する関数を検索しています

I need this part<!-- more -->and also this part

結果は

$result[0] = "I need this part"
$result[1] = "and also this part"

どんな助けにも感謝します!

4

3 に答える 3

9

explode()次のように PHP で関数を使用します。

$string = "I need this part<!-- more -->and the other part.
$result = explode('<!-- more -->`, $string) // 1st = needle -> 2nd = string

次に、結果を呼び出します。

echo $result[0]; // Echoes: I need that part
echo $result[1]; // Echoes: and the other part.
于 2012-10-16T04:22:30.620 に答える
1

preg_splitを使用します。多分このようなもの:

<?php
$result = preg_split("/<!--.+?-->/", "I need this part<!-- more -->and also this part");
print_r($result);
?>

出力:

Array
(
    [0] => I need this part
    [1] => and also this part
)
于 2012-10-16T04:27:39.510 に答える
1

正規表現を使用すると、これを非常に簡単に行うことができます。HTML/XML を正規表現で解析することを嘆いている人がいるかもしれませんが、文脈があまりないので、私が持っている最高のものを紹介します。

$data = 'I need this part<!-- more -->and also this part';

$result = array();
preg_match('/^(.+?)<!--.+?-->(.+)$/', $data, $result);

echo $result[1]; // I need this part
echo $result[2]; // and also this part

HTML を解析している場合は、PHP での HTML の解析について読むことを検討してください。

于 2012-10-16T04:24:06.253 に答える